Skip to content

Modify the optimization pipeline to better support custom array iterators #11303

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Aug 2, 2017

Conversation

swiftix
Copy link
Contributor

@swiftix swiftix commented Aug 2, 2017

This patch is supposed to recover the performance regressions that would be introduced by yet to be merged PR #9145, which introduces custom, more efficient array iterators.

The crucial part of this patch is running loop unrolling also during the mid-level optimizations phase, because it may catch more loops with constant trip counts. To make trip counts constant, an additional run of constant propagation is helpful.

…tors

This patch is supposed to recover the performance regressions that would be introduced by yet to be merged PR swiftlang#9145, which introduces custom, more efficient array iterators.

The crucial part of this patch is running loop unrolling also during the mid-level optimizations phase, because it may catch more loops with constant trip counts. To make trip counts constant, an additional run of constant propagation is helpful.
@swiftix
Copy link
Contributor Author

swiftix commented Aug 2, 2017

@swift-ci please smoke test

@swiftix
Copy link
Contributor Author

swiftix commented Aug 2, 2017

@swift-ci please smoke benchmark

@swift-ci
Copy link
Contributor

swift-ci commented Aug 2, 2017

Build comment file:

Optimized (O)

Improvement (2)
TEST OLD NEW DELTA SPEEDUP
ObjectiveCBridgeStubNSDateMutationRef 12965 12193 -6.0% 1.06x (?)
PopFrontArray 1219 1152 -5.5% 1.06x
No Changes (325)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 2943 2944 +0.0% 1.00x (?)
AnyHashableWithAClass 66456 66469 +0.0% 1.00x (?)
Array2D 2039 2039 +0.0% 1.00x
ArrayAppend 771 770 -0.1% 1.00x (?)
ArrayAppendArrayOfInt 597 597 +0.0% 1.00x
ArrayAppendAscii 10059 10058 -0.0% 1.00x (?)
ArrayAppendFromGeneric 597 598 +0.2% 1.00x
ArrayAppendGenericStructs 1221 1250 +2.4% 0.98x
ArrayAppendLatin1 31921 31958 +0.1% 1.00x (?)
ArrayAppendLazyMap 997 1014 +1.7% 0.98x (?)
ArrayAppendOptionals 1228 1236 +0.7% 0.99x (?)
ArrayAppendRepeatCol 838 838 +0.0% 1.00x
ArrayAppendReserved 533 533 +0.0% 1.00x
ArrayAppendSequence 940 941 +0.1% 1.00x (?)
ArrayAppendStrings 13698 13705 +0.1% 1.00x (?)
ArrayAppendToFromGeneric 598 598 +0.0% 1.00x
ArrayAppendToGeneric 598 597 -0.2% 1.00x
ArrayAppendUTF16 29909 29917 +0.0% 1.00x (?)
ArrayInClass 61 61 +0.0% 1.00x
ArrayLiteral 1227 1230 +0.2% 1.00x (?)
ArrayOfGenericPOD 219 219 +0.0% 1.00x
ArrayOfGenericRef 4018 4019 +0.0% 1.00x (?)
ArrayOfPOD 166 166 +0.0% 1.00x
ArrayOfRef 3910 3904 -0.2% 1.00x (?)
ArrayPlusEqualArrayOfInt 597 597 +0.0% 1.00x
ArrayPlusEqualFiveElementCollection 4888 4938 +1.0% 0.99x
ArrayPlusEqualSingleElementCollection 770 770 +0.0% 1.00x
ArrayPlusEqualThreeElements 1611 1607 -0.2% 1.00x (?)
ArraySubscript 1489 1486 -0.2% 1.00x (?)
ArrayValueProp 6 6 +0.0% 1.00x
ArrayValueProp2 6 6 +0.0% 1.00x
ArrayValueProp3 6 6 +0.0% 1.00x
ArrayValueProp4 6 6 +0.0% 1.00x
BitCount 139 142 +2.2% 0.98x (?)
ByteSwap 115 115 +0.0% 1.00x
CStringLongAscii 4661 4651 -0.2% 1.00x (?)
CStringLongNonAscii 2167 2172 +0.2% 1.00x (?)
CStringShortAscii 4752 4753 +0.0% 1.00x (?)
Calculator 37 37 +0.0% 1.00x
CaptureProp 4590 4652 +1.4% 0.99x (?)
CharIndexing_ascii_unicodeScalars 14037 14037 +0.0% 1.00x
CharIndexing_ascii_unicodeScalars_Backwards 11444 11442 -0.0% 1.00x (?)
CharIndexing_chinese_unicodeScalars 10633 10630 -0.0% 1.00x (?)
CharIndexing_chinese_unicodeScalars_Backwards 8681 8676 -0.1% 1.00x (?)
CharIndexing_japanese_unicodeScalars 16784 16778 -0.0% 1.00x (?)
CharIndexing_japanese_unicodeScalars_Backwards 13698 13698 +0.0% 1.00x
CharIndexing_korean_unicodeScalars 13613 13617 +0.0% 1.00x
CharIndexing_korean_unicodeScalars_Backwards 11101 11103 +0.0% 1.00x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 2561 2561 +0.0% 1.00x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2113 2113 +0.0% 1.00x
CharIndexing_punctuated_unicodeScalars 3197 3196 -0.0% 1.00x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 2640 2639 -0.0% 1.00x
CharIndexing_russian_unicodeScalars 11699 11700 +0.0% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 9552 9550 -0.0% 1.00x
CharIndexing_tweet_unicodeScalars 27660 27651 -0.0% 1.00x (?)
CharIndexing_tweet_unicodeScalars_Backwards 22571 22569 -0.0% 1.00x (?)
CharIndexing_utf16_unicodeScalars 77336 77354 +0.0% 1.00x (?)
CharIndexing_utf16_unicodeScalars_Backwards 76534 76516 -0.0% 1.00x (?)
CharIteration_ascii_unicodeScalars 16405 16406 +0.0% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 16569 16570 +0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars 12416 12418 +0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 12545 12547 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars 19636 19637 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 19842 19838 -0.0% 1.00x (?)
CharIteration_korean_unicodeScalars 15902 15911 +0.1% 1.00x (?)
CharIteration_korean_unicodeScalars_Backwards 16070 16067 -0.0% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars 2971 2971 +0.0% 1.00x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2984 2982 -0.1% 1.00x (?)
CharIteration_punctuated_unicodeScalars 3710 3712 +0.1% 1.00x (?)
CharIteration_punctuated_unicodeScalars_Backwards 3737 3738 +0.0% 1.00x (?)
CharIteration_russian_unicodeScalars 13672 13670 -0.0% 1.00x (?)
CharIteration_russian_unicodeScalars_Backwards 13804 13802 -0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars 32322 32320 -0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars_Backwards 32748 32736 -0.0% 1.00x (?)
CharIteration_utf16_unicodeScalars 91758 91835 +0.1% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 113465 113458 -0.0% 1.00x (?)
CharacterLiteralsLarge 6002 6022 +0.3% 1.00x (?)
CharacterLiteralsSmall 403 403 +0.0% 1.00x
Chars 425 425 +0.0% 1.00x
ClassArrayGetter 13 13 +0.0% 1.00x
DeadArray 182 182 +0.0% 1.00x
Dictionary 554 556 +0.4% 1.00x
Dictionary2 1834 1832 -0.1% 1.00x (?)
Dictionary2OfObjects 3294 3296 +0.1% 1.00x (?)
Dictionary3 442 442 +0.0% 1.00x
Dictionary3OfObjects 884 884 +0.0% 1.00x
DictionaryBridge 2585 2572 -0.5% 1.01x (?)
DictionaryGroup 271 270 -0.4% 1.00x
DictionaryGroupOfObjects 1785 1786 +0.1% 1.00x (?)
DictionaryLiteral 1480 1480 +0.0% 1.00x
DictionaryOfObjects 2330 2332 +0.1% 1.00x (?)
DictionaryRemove 2835 2851 +0.6% 0.99x (?)
DictionaryRemoveOfObjects 23515 23519 +0.0% 1.00x (?)
DictionarySwap 441 441 +0.0% 1.00x
DictionarySwapOfObjects 6876 6963 +1.3% 0.99x (?)
DropFirstAnyCollection 57 56 -1.8% 1.02x
DropFirstAnyCollectionLazy 46739 46740 +0.0% 1.00x (?)
DropFirstAnySeqCRangeIter 29055 29057 +0.0% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 29392 29383 -0.0% 1.00x (?)
DropFirstAnySeqCntRange 50 50 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 50 50 +0.0% 1.00x
DropFirstAnySequence 9646 9663 +0.2% 1.00x
DropFirstAnySequenceLazy 9644 9644 +0.0% 1.00x
DropFirstArray 24 25 +4.2% 0.96x
DropFirstArrayLazy 25 25 +0.0% 1.00x
DropFirstCountableRange 32 32 +0.0% 1.00x
DropFirstCountableRangeLazy 32 32 +0.0% 1.00x
DropFirstSequence 2813 2813 +0.0% 1.00x
DropFirstSequenceLazy 2739 2739 +0.0% 1.00x
DropLastAnyCollection 20 21 +5.0% 0.95x
DropLastAnyCollectionLazy 15507 15489 -0.1% 1.00x (?)
DropLastAnySeqCRangeIter 6050 6193 +2.4% 0.98x
DropLastAnySeqCRangeIterLazy 6066 6106 +0.7% 0.99x (?)
DropLastAnySeqCntRange 14 14 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 14 14 +0.0% 1.00x
DropLastAnySequence 8637 8709 +0.8% 0.99x (?)
DropLastAnySequenceLazy 8632 8663 +0.4% 1.00x (?)
DropLastArray 8 8 +0.0% 1.00x
DropLastArrayLazy 8 8 +0.0% 1.00x
DropLastCountableRange 10 10 +0.0% 1.00x
DropLastCountableRangeLazy 10 10 +0.0% 1.00x
DropLastSequence 613 612 -0.2% 1.00x (?)
DropLastSequenceLazy 613 611 -0.3% 1.00x
DropWhileAnyCollection 70 70 +0.0% 1.00x
DropWhileAnyCollectionLazy 103 103 +0.0% 1.00x
DropWhileAnySeqCRangeIter 23002 23000 -0.0% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 103 103 +0.0% 1.00x
DropWhileAnySeqCntRange 64 64 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 103 103 +0.0% 1.00x
DropWhileAnySequence 8222 8221 -0.0% 1.00x (?)
DropWhileAnySequenceLazy 2734 2734 +0.0% 1.00x
DropWhileArray 37 37 +0.0% 1.00x
DropWhileArrayLazy 78 78 +0.0% 1.00x
DropWhileCountableRange 36 36 +0.0% 1.00x
DropWhileCountableRangeLazy 68 68 +0.0% 1.00x
DropWhileSequence 2108 2108 +0.0% 1.00x
DropWhileSequenceLazy 65 65 +0.0% 1.00x
EqualStringSubstring 387 387 +0.0% 1.00x
EqualSubstringString 385 387 +0.5% 0.99x (?)
EqualSubstringSubstring 388 388 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 388 388 +0.0% 1.00x
ErrorHandling 2059 2058 -0.0% 1.00x (?)
FilterEvenUsingReduce 1283 1302 +1.5% 0.99x
FilterEvenUsingReduceInto 148 148 +0.0% 1.00x
FrequenciesUsingReduce 7154 7174 +0.3% 1.00x (?)
FrequenciesUsingReduceInto 4250 4244 -0.1% 1.00x (?)
Hanoi 3620 3616 -0.1% 1.00x (?)
HashTest 1705 1707 +0.1% 1.00x (?)
Histogram 305 305 +0.0% 1.00x
Integrate 263 263 +0.0% 1.00x
IterateData 759 759 +0.0% 1.00x
Join 377 378 +0.3% 1.00x (?)
LazilyFilteredArrays 65109 64906 -0.3% 1.00x
LazilyFilteredRange 3888 3889 +0.0% 1.00x (?)
LessSubstringSubstring 385 385 +0.0% 1.00x
LessSubstringSubstringGenericComparable 385 385 +0.0% 1.00x
LinkedList 7142 7142 +0.0% 1.00x
MapReduce 382 382 +0.0% 1.00x
MapReduceAnyCollection 363 363 +0.0% 1.00x
MapReduceAnyCollectionShort 2051 2050 -0.0% 1.00x (?)
MapReduceClass 3058 3060 +0.1% 1.00x (?)
MapReduceClassShort 4628 4623 -0.1% 1.00x (?)
MapReduceLazyCollection 15 15 +0.0% 1.00x
MapReduceLazyCollectionShort 45 45 +0.0% 1.00x
MapReduceLazySequence 90 90 +0.0% 1.00x
MapReduceSequence 448 441 -1.6% 1.02x
MapReduceShort 1966 1968 +0.1% 1.00x
MapReduceShortString 22 22 +0.0% 1.00x
MapReduceString 106 106 +0.0% 1.00x
Memset 234 234 +0.0% 1.00x
MonteCarloE 10418 10401 -0.2% 1.00x
MonteCarloPi 43999 43999 +0.0% 1.00x
NSDictionaryCastToSwift 5572 5608 +0.6% 0.99x (?)
NSError 290 290 +0.0% 1.00x
NSStringConversion 365 365 +0.0% 1.00x
NopDeinit 22887 22894 +0.0% 1.00x
ObjectAllocation 178 179 +0.6% 0.99x
ObjectiveCBridgeFromNSArrayAnyObject 22289 22819 +2.4% 0.98x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 3452 3451 -0.0% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 39229 39628 +1.0% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 33419 32941 -1.4% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 118845 118795 -0.0% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectForced 5113 5130 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToString 98291 96001 -2.3% 1.02x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToStringForced 99272 99632 +0.4% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObject 64379 64303 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4236 4236 +0.0% 1.00x
ObjectiveCBridgeFromNSSetAnyObjectToString 66993 67151 +0.2% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectToStringForced 70410 68415 -2.8% 1.03x (?)
ObjectiveCBridgeFromNSString 987 987 +0.0% 1.00x
ObjectiveCBridgeFromNSStringForced 1845 1844 -0.1% 1.00x (?)
ObjectiveCBridgeStubDataAppend 3939 3879 -1.5% 1.02x (?)
ObjectiveCBridgeStubDateAccess 181 181 +0.0% 1.00x
ObjectiveCBridgeStubDateMutation 272 272 +0.0% 1.00x
ObjectiveCBridgeStubFromArrayOfNSString 24725 24787 +0.3% 1.00x (?)
ObjectiveCBridgeStubFromNSDate 3400 3399 -0.0% 1.00x
ObjectiveCBridgeStubFromNSDateRef 3987 3994 +0.2% 1.00x
ObjectiveCBridgeStubFromNSString 540 539 -0.2% 1.00x (?)
ObjectiveCBridgeStubFromNSStringRef 146 146 +0.0% 1.00x
ObjectiveCBridgeStubNSDataAppend 2285 2324 +1.7% 0.98x (?)
ObjectiveCBridgeStubNSDateRefAccess 312 313 +0.3% 1.00x
ObjectiveCBridgeStubToArrayOfNSString 28707 28841 +0.5% 1.00x (?)
ObjectiveCBridgeStubToNSDate 14964 15152 +1.3% 0.99x (?)
ObjectiveCBridgeStubToNSDateRef 3343 3280 -1.9% 1.02x
ObjectiveCBridgeStubToNSString 1510 1510 +0.0% 1.00x
ObjectiveCBridgeStubToNSStringRef 109 109 +0.0% 1.00x
ObjectiveCBridgeStubURLAppendPath 225972 225261 -0.3% 1.00x (?)
ObjectiveCBridgeStubURLAppendPathRef 227332 225454 -0.8% 1.01x (?)
ObjectiveCBridgeToNSArray 28940 28403 -1.9% 1.02x (?)
ObjectiveCBridgeToNSDictionary 44499 44965 +1.0% 0.99x
ObjectiveCBridgeToNSSet 39002 39049 +0.1% 1.00x (?)
ObjectiveCBridgeToNSString 1286 1292 +0.5% 1.00x
ObserverClosure 2287 2288 +0.0% 1.00x (?)
ObserverForwarderStruct 1133 1130 -0.3% 1.00x (?)
ObserverPartiallyAppliedMethod 3775 3771 -0.1% 1.00x
ObserverUnappliedMethod 2701 2703 +0.1% 1.00x (?)
OpenClose 51 51 +0.0% 1.00x
Phonebook 6398 6399 +0.0% 1.00x (?)
PolymorphicCalls 22 22 +0.0% 1.00x
PopFrontArrayGeneric 1218 1216 -0.2% 1.00x (?)
PopFrontUnsafePointer 9515 9516 +0.0% 1.00x (?)
PrefixAnyCollection 56 56 +0.0% 1.00x
PrefixAnyCollectionLazy 46485 46481 -0.0% 1.00x (?)
PrefixAnySeqCRangeIter 22762 22769 +0.0% 1.00x (?)
PrefixAnySeqCRangeIterLazy 22681 22665 -0.1% 1.00x
PrefixAnySeqCntRange 50 50 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 50 50 +0.0% 1.00x
PrefixAnySequence 8102 8101 -0.0% 1.00x (?)
PrefixAnySequenceLazy 8103 8108 +0.1% 1.00x (?)
PrefixArray 24 25 +4.2% 0.96x
PrefixArrayLazy 25 25 +0.0% 1.00x
PrefixCountableRange 32 32 +0.0% 1.00x
PrefixCountableRangeLazy 32 32 +0.0% 1.00x
PrefixSequence 2092 2092 +0.0% 1.00x
PrefixSequenceLazy 2054 2054 +0.0% 1.00x
PrefixWhileAnyCollection 96 96 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 75 75 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 17044 17175 +0.8% 0.99x (?)
PrefixWhileAnySeqCRangeIterLazy 75 75 +0.0% 1.00x
PrefixWhileAnySeqCntRange 90 90 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 75 75 +0.0% 1.00x
PrefixWhileAnySequence 18867 18781 -0.5% 1.00x (?)
PrefixWhileAnySequenceLazy 2181 2181 +0.0% 1.00x
PrefixWhileArray 62 62 +0.0% 1.00x
PrefixWhileArrayLazy 49 49 +0.0% 1.00x
PrefixWhileCountableRange 36 36 +0.0% 1.00x
PrefixWhileCountableRangeLazy 32 32 +0.0% 1.00x
PrefixWhileSequence 306 308 +0.7% 0.99x (?)
PrefixWhileSequenceLazy 28 28 +0.0% 1.00x
Prims 782 784 +0.3% 1.00x (?)
ProtocolDispatch 2728 2727 -0.0% 1.00x
ProtocolDispatch2 172 171 -0.6% 1.01x
RC4 160 160 +0.0% 1.00x
RGBHistogram 2436 2437 +0.0% 1.00x (?)
RGBHistogramOfObjects 23512 23511 -0.0% 1.00x (?)
RangeAssignment 333 333 +0.0% 1.00x
RecursiveOwnedParameter 2327 2332 +0.2% 1.00x
ReversedArray 49 49 +0.0% 1.00x
ReversedBidirectional 30586 30610 +0.1% 1.00x (?)
ReversedDictionary 116 114 -1.7% 1.02x (?)
SetExclusiveOr 3266 3283 +0.5% 0.99x (?)
SetExclusiveOr_OfObjects 8201 8160 -0.5% 1.01x (?)
SetIntersect 306 308 +0.7% 0.99x (?)
SetIntersect_OfObjects 1739 1718 -1.2% 1.01x (?)
SetIsSubsetOf 292 292 +0.0% 1.00x
SetIsSubsetOf_OfObjects 359 359 +0.0% 1.00x
SetUnion 2839 2849 +0.4% 1.00x (?)
SetUnion_OfObjects 6805 6770 -0.5% 1.01x (?)
SevenBoom 1474 1476 +0.1% 1.00x (?)
Sim2DArray 276 276 +0.0% 1.00x
SortLargeExistentials 7966 7970 +0.1% 1.00x (?)
SortLettersInPlace 1146 1151 +0.4% 1.00x
SortSortedStrings 925 926 +0.1% 1.00x (?)
SortStrings 1744 1747 +0.2% 1.00x (?)
SortStringsUnicode 7646 7655 +0.1% 1.00x (?)
StackPromo 22282 22280 -0.0% 1.00x (?)
StaticArray 18 18 +0.0% 1.00x
StrComplexWalk 720 720 +0.0% 1.00x
StrToInt 1980 1979 -0.1% 1.00x (?)
StringAdder 3513 3521 +0.2% 1.00x (?)
StringBuilder 1018 1018 +0.0% 1.00x
StringBuilderLong 920 919 -0.1% 1.00x (?)
StringEdits 118772 118824 +0.0% 1.00x (?)
StringEqualPointerComparison 333 333 +0.0% 1.00x
StringFromLongWholeSubstring 206 206 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 22 22 +0.0% 1.00x
StringHasPrefix 33 33 +0.0% 1.00x
StringHasPrefixUnicode 15028 14933 -0.6% 1.01x
StringHasSuffix 33 33 +0.0% 1.00x
StringHasSuffixUnicode 62248 62249 +0.0% 1.00x (?)
StringInterpolation 10794 10940 +1.4% 0.99x (?)
StringMatch 7304 7299 -0.1% 1.00x (?)
StringUTF16Builder 1896 1922 +1.4% 0.99x (?)
StringWalk 1307 1307 +0.0% 1.00x
StringWithCString 59560 59470 -0.2% 1.00x (?)
SubstringComparable 1611 1612 +0.1% 1.00x (?)
SubstringEqualString 1424 1423 -0.1% 1.00x (?)
SubstringEquatable 3465 3424 -1.2% 1.01x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 62 62 +0.0% 1.00x
SuffixAnyCollection 20 20 +0.0% 1.00x
SuffixAnyCollectionLazy 15563 15607 +0.3% 1.00x (?)
SuffixAnySeqCRangeIter 6303 6301 -0.0% 1.00x (?)
SuffixAnySeqCRangeIterLazy 6302 6301 -0.0% 1.00x (?)
SuffixAnySeqCntRange 14 14 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 14 14 +0.0% 1.00x
SuffixAnySequence 8770 8796 +0.3% 1.00x (?)
SuffixAnySequenceLazy 8620 8619 -0.0% 1.00x (?)
SuffixArray 8 8 +0.0% 1.00x
SuffixArrayLazy 11 11 +0.0% 1.00x
SuffixCountableRange 10 10 +0.0% 1.00x
SuffixCountableRangeLazy 10 10 +0.0% 1.00x
SuffixSequence 5883 5883 +0.0% 1.00x
SuffixSequenceLazy 5883 5883 +0.0% 1.00x
SumUsingReduce 97 97 +0.0% 1.00x
SumUsingReduceInto 97 97 +0.0% 1.00x
SuperChars 80829 80800 -0.0% 1.00x (?)
TwoSum 978 977 -0.1% 1.00x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 257 257 +0.0% 1.00x
Walsh 374 374 +0.0% 1.00x
XorLoop 347 347 +0.0% 1.00x
accessGlobal 3 3 +0.0% 1.00x
accessInMatSet 18 18 +0.0% 1.00x
accessIndependent 2 2 +0.0% 1.00x

Unoptimized (Onone)

Regression (1)
TEST OLD NEW DELTA SPEEDUP
PrefixWhileArrayLazy 21987 23744 +8.0% 0.93x (?)
No Changes (326)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 5600 5611 +0.2% 1.00x (?)
AnyHashableWithAClass 83795 83773 -0.0% 1.00x (?)
Array2D 607342 607009 -0.1% 1.00x (?)
ArrayAppend 3905 3904 -0.0% 1.00x (?)
ArrayAppendArrayOfInt 653 653 +0.0% 1.00x
ArrayAppendAscii 49914 49922 +0.0% 1.00x (?)
ArrayAppendFromGeneric 657 657 +0.0% 1.00x
ArrayAppendGenericStructs 1301 1360 +4.5% 0.96x
ArrayAppendLatin1 75964 73712 -3.0% 1.03x
ArrayAppendLazyMap 317437 317399 -0.0% 1.00x (?)
ArrayAppendOptionals 1299 1337 +2.9% 0.97x
ArrayAppendRepeatCol 234260 234192 -0.0% 1.00x (?)
ArrayAppendReserved 3777 3777 +0.0% 1.00x
ArrayAppendSequence 115558 115518 -0.0% 1.00x (?)
ArrayAppendStrings 13657 13640 -0.1% 1.00x (?)
ArrayAppendToFromGeneric 655 656 +0.2% 1.00x (?)
ArrayAppendToGeneric 656 657 +0.2% 1.00x (?)
ArrayAppendUTF16 72994 72917 -0.1% 1.00x (?)
ArrayInClass 6400 6402 +0.0% 1.00x (?)
ArrayLiteral 1748 1748 +0.0% 1.00x
ArrayOfGenericPOD 3181 3179 -0.1% 1.00x (?)
ArrayOfGenericRef 10032 10027 -0.0% 1.00x (?)
ArrayOfPOD 1832 1832 +0.0% 1.00x
ArrayOfRef 9064 9067 +0.0% 1.00x (?)
ArrayPlusEqualArrayOfInt 654 655 +0.2% 1.00x
ArrayPlusEqualFiveElementCollection 300697 300872 +0.1% 1.00x (?)
ArrayPlusEqualSingleElementCollection 294518 298012 +1.2% 0.99x (?)
ArrayPlusEqualThreeElements 10753 10742 -0.1% 1.00x (?)
ArraySubscript 4199 4215 +0.4% 1.00x
ArrayValueProp 3532 3534 +0.1% 1.00x (?)
ArrayValueProp2 22647 22713 +0.3% 1.00x
ArrayValueProp3 3943 4004 +1.5% 0.98x (?)
ArrayValueProp4 3848 3913 +1.7% 0.98x (?)
BitCount 1738 1739 +0.1% 1.00x (?)
ByteSwap 4149 4161 +0.3% 1.00x (?)
CStringLongAscii 4668 4635 -0.7% 1.01x (?)
CStringLongNonAscii 2315 2314 -0.0% 1.00x (?)
CStringShortAscii 9104 9102 -0.0% 1.00x (?)
Calculator 1132 1132 +0.0% 1.00x
CaptureProp 132399 134224 +1.4% 0.99x (?)
CharIndexing_ascii_unicodeScalars 577943 573682 -0.7% 1.01x (?)
CharIndexing_ascii_unicodeScalars_Backwards 619962 618669 -0.2% 1.00x (?)
CharIndexing_chinese_unicodeScalars 430165 429674 -0.1% 1.00x (?)
CharIndexing_chinese_unicodeScalars_Backwards 471062 467341 -0.8% 1.01x
CharIndexing_japanese_unicodeScalars 683832 685963 +0.3% 1.00x (?)
CharIndexing_japanese_unicodeScalars_Backwards 747162 750377 +0.4% 1.00x (?)
CharIndexing_korean_unicodeScalars 553423 553202 -0.0% 1.00x (?)
CharIndexing_korean_unicodeScalars_Backwards 606612 612721 +1.0% 0.99x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 98472 98402 -0.1% 1.00x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 106417 106219 -0.2% 1.00x (?)
CharIndexing_punctuated_unicodeScalars 124363 125410 +0.8% 0.99x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 135458 134603 -0.6% 1.01x (?)
CharIndexing_russian_unicodeScalars 473564 473999 +0.1% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 515322 513836 -0.3% 1.00x (?)
CharIndexing_tweet_unicodeScalars 1143060 1149763 +0.6% 0.99x (?)
CharIndexing_tweet_unicodeScalars_Backwards 1234020 1246597 +1.0% 0.99x (?)
CharIndexing_utf16_unicodeScalars 640815 639358 -0.2% 1.00x (?)
CharIndexing_utf16_unicodeScalars_Backwards 698170 700228 +0.3% 1.00x (?)
CharIteration_ascii_unicodeScalars 223861 223838 -0.0% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 393192 393837 +0.2% 1.00x (?)
CharIteration_chinese_unicodeScalars 169427 169398 -0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 297174 297167 -0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars 268816 268848 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 476264 473600 -0.6% 1.01x (?)
CharIteration_korean_unicodeScalars 217161 217153 -0.0% 1.00x (?)
CharIteration_korean_unicodeScalars_Backwards 381357 386868 +1.4% 0.99x (?)
CharIteration_punctuatedJapanese_unicodeScalars 39634 39629 -0.0% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 68748 69044 +0.4% 1.00x (?)
CharIteration_punctuated_unicodeScalars 49921 49958 +0.1% 1.00x
CharIteration_punctuated_unicodeScalars_Backwards 86758 86779 +0.0% 1.00x (?)
CharIteration_russian_unicodeScalars 186003 185981 -0.0% 1.00x (?)
CharIteration_russian_unicodeScalars_Backwards 326837 326818 -0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars 441796 441970 +0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars_Backwards 778754 776087 -0.3% 1.00x (?)
CharIteration_utf16_unicodeScalars 257415 257440 +0.0% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 488764 492691 +0.8% 0.99x (?)
CharacterLiteralsLarge 6216 6210 -0.1% 1.00x (?)
CharacterLiteralsSmall 663 664 +0.2% 1.00x (?)
Chars 66776 66776 +0.0% 1.00x
ClassArrayGetter 986 986 +0.0% 1.00x
DeadArray 115853 115882 +0.0% 1.00x (?)
Dictionary 3483 3451 -0.9% 1.01x (?)
Dictionary2 3386 3391 +0.1% 1.00x (?)
Dictionary2OfObjects 6014 6026 +0.2% 1.00x (?)
Dictionary3 1308 1302 -0.5% 1.00x
Dictionary3OfObjects 2332 2339 +0.3% 1.00x (?)
DictionaryBridge 2671 2648 -0.9% 1.01x (?)
DictionaryGroup 5303 5307 +0.1% 1.00x (?)
DictionaryGroupOfObjects 8777 8764 -0.1% 1.00x (?)
DictionaryLiteral 8307 8282 -0.3% 1.00x (?)
DictionaryOfObjects 6992 7089 +1.4% 0.99x (?)
DictionaryRemove 21497 21502 +0.0% 1.00x (?)
DictionaryRemoveOfObjects 59355 59419 +0.1% 1.00x (?)
DictionarySwap 5378 5384 +0.1% 1.00x (?)
DictionarySwapOfObjects 22908 22993 +0.4% 1.00x (?)
DropFirstAnyCollection 20397 20377 -0.1% 1.00x (?)
DropFirstAnyCollectionLazy 153412 152365 -0.7% 1.01x (?)
DropFirstAnySeqCRangeIter 30903 30898 -0.0% 1.00x
DropFirstAnySeqCRangeIterLazy 31820 31840 +0.1% 1.00x (?)
DropFirstAnySeqCntRange 20396 20401 +0.0% 1.00x (?)
DropFirstAnySeqCntRangeLazy 20277 20276 -0.0% 1.00x (?)
DropFirstAnySequence 16861 16860 -0.0% 1.00x (?)
DropFirstAnySequenceLazy 16694 16696 +0.0% 1.00x (?)
DropFirstArray 10430 10529 +0.9% 0.99x (?)
DropFirstArrayLazy 53337 53354 +0.0% 1.00x (?)
DropFirstCountableRange 338 338 +0.0% 1.00x
DropFirstCountableRangeLazy 39064 39041 -0.1% 1.00x (?)
DropFirstSequence 15796 15795 -0.0% 1.00x (?)
DropFirstSequenceLazy 15586 15588 +0.0% 1.00x
DropLastAnyCollection 6806 6796 -0.1% 1.00x (?)
DropLastAnyCollectionLazy 50790 50890 +0.2% 1.00x (?)
DropLastAnySeqCRangeIter 47292 47285 -0.0% 1.00x (?)
DropLastAnySeqCRangeIterLazy 47469 47354 -0.2% 1.00x (?)
DropLastAnySeqCntRange 6780 6781 +0.0% 1.00x (?)
DropLastAnySeqCntRangeLazy 6779 6778 -0.0% 1.00x (?)
DropLastAnySequence 32633 32864 +0.7% 0.99x (?)
DropLastAnySequenceLazy 32492 32699 +0.6% 0.99x (?)
DropLastArray 3473 3472 -0.0% 1.00x (?)
DropLastArrayLazy 17779 17759 -0.1% 1.00x (?)
DropLastCountableRange 117 117 +0.0% 1.00x
DropLastCountableRangeLazy 13002 13004 +0.0% 1.00x (?)
DropLastSequence 32413 32905 +1.5% 0.99x (?)
DropLastSequenceLazy 32822 32868 +0.1% 1.00x (?)
DropWhileAnyCollection 26007 26003 -0.0% 1.00x (?)
DropWhileAnyCollectionLazy 30415 30401 -0.0% 1.00x (?)
DropWhileAnySeqCRangeIter 33289 33286 -0.0% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 30308 30358 +0.2% 1.00x (?)
DropWhileAnySeqCntRange 26039 26063 +0.1% 1.00x (?)
DropWhileAnySeqCntRangeLazy 30528 30541 +0.0% 1.00x
DropWhileAnySequence 17014 17024 +0.1% 1.00x (?)
DropWhileAnySequenceLazy 14987 14989 +0.0% 1.00x (?)
DropWhileArray 14662 14702 +0.3% 1.00x (?)
DropWhileArrayLazy 25207 25214 +0.0% 1.00x (?)
DropWhileCountableRange 6015 6013 -0.0% 1.00x (?)
DropWhileCountableRangeLazy 29009 29011 +0.0% 1.00x (?)
DropWhileSequence 16105 16103 -0.0% 1.00x (?)
DropWhileSequenceLazy 13973 13973 +0.0% 1.00x
EqualStringSubstring 664 663 -0.2% 1.00x (?)
EqualSubstringString 663 663 +0.0% 1.00x
EqualSubstringSubstring 774 775 +0.1% 1.00x (?)
EqualSubstringSubstringGenericEquatable 418 418 +0.0% 1.00x
ErrorHandling 7794 7772 -0.3% 1.00x (?)
FilterEvenUsingReduce 4858 4854 -0.1% 1.00x (?)
FilterEvenUsingReduceInto 3117 3122 +0.2% 1.00x (?)
FrequenciesUsingReduce 16224 16239 +0.1% 1.00x (?)
FrequenciesUsingReduceInto 9463 9416 -0.5% 1.00x (?)
Hanoi 18488 18497 +0.0% 1.00x (?)
HashTest 18036 18032 -0.0% 1.00x (?)
Histogram 9860 9798 -0.6% 1.01x (?)
Integrate 699 700 +0.1% 1.00x
IterateData 12859 12840 -0.1% 1.00x
Join 1752 1748 -0.2% 1.00x (?)
LazilyFilteredArrays 2043396 2041800 -0.1% 1.00x (?)
LazilyFilteredRange 749532 750279 +0.1% 1.00x
LessSubstringSubstring 775 779 +0.5% 0.99x
LessSubstringSubstringGenericComparable 437 437 +0.0% 1.00x
LinkedList 40268 40276 +0.0% 1.00x (?)
MapReduce 44445 44345 -0.2% 1.00x (?)
MapReduceAnyCollection 44291 44319 +0.1% 1.00x (?)
MapReduceAnyCollectionShort 56916 56842 -0.1% 1.00x (?)
MapReduceClass 50050 50002 -0.1% 1.00x (?)
MapReduceClassShort 61025 61276 +0.4% 1.00x (?)
MapReduceLazyCollection 43356 43370 +0.0% 1.00x (?)
MapReduceLazyCollectionShort 55659 55211 -0.8% 1.01x (?)
MapReduceLazySequence 31738 31722 -0.1% 1.00x (?)
MapReduceSequence 50181 50186 +0.0% 1.00x (?)
MapReduceShort 56851 56675 -0.3% 1.00x (?)
MapReduceShortString 321 324 +0.9% 0.99x (?)
MapReduceString 3172 3169 -0.1% 1.00x (?)
Memset 44797 44795 -0.0% 1.00x (?)
MonteCarloE 146927 146983 +0.0% 1.00x (?)
MonteCarloPi 52517 52517 +0.0% 1.00x
NSDictionaryCastToSwift 6618 6578 -0.6% 1.01x (?)
NSError 700 711 +1.6% 0.98x (?)
NSStringConversion 393 393 +0.0% 1.00x
NopDeinit 182798 183305 +0.3% 1.00x (?)
ObjectAllocation 1662 1649 -0.8% 1.01x (?)
ObjectiveCBridgeFromNSArrayAnyObject 24178 24573 +1.6% 0.98x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 6945 6768 -2.5% 1.03x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 40520 40550 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 33866 34337 +1.4% 0.99x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 122765 124068 +1.1% 0.99x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectForced 7494 7638 +1.9% 0.98x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToString 98965 100754 +1.8% 0.98x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToStringForced 104351 105047 +0.7% 0.99x (?)
ObjectiveCBridgeFromNSSetAnyObject 69083 68775 -0.4% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 7503 7524 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 74545 71961 -3.5% 1.04x (?)
ObjectiveCBridgeFromNSSetAnyObjectToStringForced 71317 71516 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSString 3802 3809 +0.2% 1.00x (?)
ObjectiveCBridgeFromNSStringForced 2197 2199 +0.1% 1.00x (?)
ObjectiveCBridgeStubDataAppend 3838 3877 +1.0% 0.99x
ObjectiveCBridgeStubDateAccess 1031 1031 +0.0% 1.00x
ObjectiveCBridgeStubDateMutation 515 515 +0.0% 1.00x
ObjectiveCBridgeStubFromArrayOfNSString 25244 25228 -0.1% 1.00x (?)
ObjectiveCBridgeStubFromNSDate 3914 3898 -0.4% 1.00x (?)
ObjectiveCBridgeStubFromNSDateRef 4454 4446 -0.2% 1.00x (?)
ObjectiveCBridgeStubFromNSString 581 581 +0.0% 1.00x
ObjectiveCBridgeStubFromNSStringRef 184 185 +0.5% 0.99x (?)
ObjectiveCBridgeStubNSDataAppend 2731 2741 +0.4% 1.00x (?)
ObjectiveCBridgeStubNSDateMutationRef 15785 15775 -0.1% 1.00x (?)
ObjectiveCBridgeStubNSDateRefAccess 1211 1210 -0.1% 1.00x (?)
ObjectiveCBridgeStubToArrayOfNSString 28927 29081 +0.5% 0.99x (?)
ObjectiveCBridgeStubToNSDate 14706 15295 +4.0% 0.96x (?)
ObjectiveCBridgeStubToNSDateRef 3368 3340 -0.8% 1.01x (?)
ObjectiveCBridgeStubToNSString 1565 1565 +0.0% 1.00x
ObjectiveCBridgeStubToNSStringRef 155 155 +0.0% 1.00x
ObjectiveCBridgeStubURLAppendPath 231174 227168 -1.7% 1.02x
ObjectiveCBridgeStubURLAppendPathRef 228902 223159 -2.5% 1.03x (?)
ObjectiveCBridgeToNSArray 29176 28891 -1.0% 1.01x (?)
ObjectiveCBridgeToNSDictionary 45063 44759 -0.7% 1.01x (?)
ObjectiveCBridgeToNSSet 39881 39502 -1.0% 1.01x (?)
ObjectiveCBridgeToNSString 1304 1305 +0.1% 1.00x (?)
ObserverClosure 7469 7473 +0.1% 1.00x (?)
ObserverForwarderStruct 5502 5506 +0.1% 1.00x (?)
ObserverPartiallyAppliedMethod 8848 8883 +0.4% 1.00x (?)
ObserverUnappliedMethod 9519 9483 -0.4% 1.00x
OpenClose 392 393 +0.3% 1.00x
Phonebook 21453 21434 -0.1% 1.00x (?)
PolymorphicCalls 5366 5359 -0.1% 1.00x
PopFrontArray 9987 9981 -0.1% 1.00x
PopFrontArrayGeneric 8988 9000 +0.1% 1.00x (?)
PopFrontUnsafePointer 98195 98138 -0.1% 1.00x (?)
PrefixAnyCollection 20332 20344 +0.1% 1.00x (?)
PrefixAnyCollectionLazy 151832 152659 +0.5% 0.99x (?)
PrefixAnySeqCRangeIter 24589 24601 +0.0% 1.00x (?)
PrefixAnySeqCRangeIterLazy 25037 25041 +0.0% 1.00x (?)
PrefixAnySeqCntRange 20373 20370 -0.0% 1.00x (?)
PrefixAnySeqCntRangeLazy 20287 20284 -0.0% 1.00x (?)
PrefixAnySequence 13797 13796 -0.0% 1.00x (?)
PrefixAnySequenceLazy 13704 13702 -0.0% 1.00x (?)
PrefixArray 10413 10411 -0.0% 1.00x (?)
PrefixArrayLazy 53391 51992 -2.6% 1.03x
PrefixCountableRange 340 340 +0.0% 1.00x
PrefixCountableRangeLazy 39032 39038 +0.0% 1.00x (?)
PrefixSequence 12711 12715 +0.0% 1.00x (?)
PrefixSequenceLazy 12633 12627 -0.0% 1.00x (?)
PrefixWhileAnyCollection 37289 37279 -0.0% 1.00x (?)
PrefixWhileAnyCollectionLazy 25677 25680 +0.0% 1.00x (?)
PrefixWhileAnySeqCRangeIter 46764 47362 +1.3% 0.99x (?)
PrefixWhileAnySeqCRangeIterLazy 26075 26061 -0.1% 1.00x (?)
PrefixWhileAnySeqCntRange 37397 37406 +0.0% 1.00x (?)
PrefixWhileAnySeqCntRangeLazy 25752 25745 -0.0% 1.00x (?)
PrefixWhileAnySequence 35088 35688 +1.7% 0.98x (?)
PrefixWhileAnySequenceLazy 14798 14803 +0.0% 1.00x (?)
PrefixWhileArray 21873 21879 +0.0% 1.00x (?)
PrefixWhileCountableRange 17260 17255 -0.0% 1.00x (?)
PrefixWhileCountableRangeLazy 24117 24121 +0.0% 1.00x (?)
PrefixWhileSequence 33833 33833 +0.0% 1.00x
PrefixWhileSequenceLazy 14091 14093 +0.0% 1.00x (?)
Prims 10513 10487 -0.2% 1.00x (?)
ProtocolDispatch 6967 6971 +0.1% 1.00x (?)
ProtocolDispatch2 493 493 +0.0% 1.00x
RC4 18616 18619 +0.0% 1.00x (?)
RGBHistogram 36016 36041 +0.1% 1.00x (?)
RGBHistogramOfObjects 109720 109878 +0.1% 1.00x (?)
RangeAssignment 5767 5763 -0.1% 1.00x (?)
RecursiveOwnedParameter 11193 11191 -0.0% 1.00x (?)
ReversedArray 52846 52862 +0.0% 1.00x (?)
ReversedBidirectional 86887 86782 -0.1% 1.00x (?)
ReversedDictionary 35209 35205 -0.0% 1.00x (?)
SetExclusiveOr 21625 21553 -0.3% 1.00x (?)
SetExclusiveOr_OfObjects 48415 48527 +0.2% 1.00x (?)
SetIntersect 11029 11030 +0.0% 1.00x (?)
SetIntersect_OfObjects 12746 12760 +0.1% 1.00x (?)
SetIsSubsetOf 1682 1682 +0.0% 1.00x
SetIsSubsetOf_OfObjects 1642 1592 -3.0% 1.03x (?)
SetUnion 12204 12154 -0.4% 1.00x (?)
SetUnion_OfObjects 33713 33683 -0.1% 1.00x (?)
SevenBoom 1609 1598 -0.7% 1.01x (?)
Sim2DArray 44168 44168 +0.0% 1.00x
SortLargeExistentials 17916 17893 -0.1% 1.00x (?)
SortLettersInPlace 3173 3163 -0.3% 1.00x (?)
SortSortedStrings 1416 1431 +1.1% 0.99x (?)
SortStrings 2456 2458 +0.1% 1.00x (?)
SortStringsUnicode 8841 8854 +0.1% 1.00x (?)
StackPromo 99978 99984 +0.0% 1.00x (?)
StaticArray 4604 4599 -0.1% 1.00x (?)
StrComplexWalk 6762 6789 +0.4% 1.00x
StrToInt 115475 115980 +0.4% 1.00x (?)
StringAdder 3791 3777 -0.4% 1.00x
StringBuilder 8378 8506 +1.5% 0.98x (?)
StringBuilderLong 1089 1087 -0.2% 1.00x (?)
StringEdits 423125 422142 -0.2% 1.00x (?)
StringEqualPointerComparison 2622 2617 -0.2% 1.00x (?)
StringFromLongWholeSubstring 214 214 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 211 210 -0.5% 1.00x
StringHasPrefix 1698 1698 +0.0% 1.00x
StringHasPrefixUnicode 16400 16398 -0.0% 1.00x (?)
StringHasSuffix 1892 1889 -0.2% 1.00x (?)
StringHasSuffixUnicode 63794 63826 +0.1% 1.00x (?)
StringInterpolation 13702 13782 +0.6% 0.99x (?)
StringMatch 34505 34499 -0.0% 1.00x (?)
StringUTF16Builder 9166 9279 +1.2% 0.99x (?)
StringWalk 12719 12721 +0.0% 1.00x (?)
StringWithCString 57529 57520 -0.0% 1.00x (?)
SubstringComparable 4741 4758 +0.4% 1.00x (?)
SubstringEqualString 6668 6622 -0.7% 1.01x (?)
SubstringEquatable 9454 9439 -0.2% 1.00x (?)
SubstringFromLongString 12 12 +0.0% 1.00x
SubstringFromLongStringGeneric 116 116 +0.0% 1.00x
SuffixAnyCollection 6828 6829 +0.0% 1.00x (?)
SuffixAnyCollectionLazy 50760 50850 +0.2% 1.00x (?)
SuffixAnySeqCRangeIter 45036 45038 +0.0% 1.00x (?)
SuffixAnySeqCRangeIterLazy 45013 45014 +0.0% 1.00x (?)
SuffixAnySeqCntRange 6771 6773 +0.0% 1.00x (?)
SuffixAnySeqCntRangeLazy 6782 6786 +0.1% 1.00x (?)
SuffixAnySequence 30127 30131 +0.0% 1.00x (?)
SuffixAnySequenceLazy 30111 30128 +0.1% 1.00x (?)
SuffixArray 3480 3475 -0.1% 1.00x (?)
SuffixArrayLazy 17787 17810 +0.1% 1.00x
SuffixCountableRange 118 118 +0.0% 1.00x
SuffixCountableRangeLazy 12997 12994 -0.0% 1.00x (?)
SuffixSequence 30205 30216 +0.0% 1.00x (?)
SuffixSequenceLazy 29930 30110 +0.6% 0.99x (?)
SumUsingReduce 290461 288121 -0.8% 1.01x
SumUsingReduceInto 287069 283391 -1.3% 1.01x (?)
SuperChars 219979 220112 +0.1% 1.00x (?)
TwoSum 4199 4193 -0.1% 1.00x
TypeFlood 163 164 +0.6% 0.99x (?)
UTF8Decode 49201 49201 +0.0% 1.00x
Walsh 11963 11972 +0.1% 1.00x (?)
XorLoop 24013 24011 -0.0% 1.00x (?)
accessGlobal 190 190 +0.0% 1.00x
accessInMatSet 326 326 +0.0% 1.00x
accessIndependent 125 125 +0.0% 1.00x
Hardware Overview
  Model Name: Mac mini
  Model Identifier: Macmini7,1
  Processor Name: Intel Core i5
  Processor Speed: 2.8 GHz
  Number of Processors: 1
  Total Number of Cores: 2
  L2 Cache (per Core): 256 KB
  L3 Cache: 3 MB
  Memory: 16 GB

@swiftix swiftix merged commit 11211de into swiftlang:master Aug 2, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants