Skip to content

[Benchmarks] Update benchmarks to Swift 4 #14623

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
Feb 15, 2018

Conversation

airspeedswift
Copy link
Member

@airspeedswift airspeedswift commented Feb 14, 2018

Update benchmarks to Swift 4. Just seeing if doing this makes any of them change, first, then we'll see if we want to make this change at this particular time.

Also I'm immensely suspicious of all that truncatingBitPattern:

Edit: Looks like all OK except maybe some regressions in debug. We should probably do this.

@airspeedswift
Copy link
Member Author

@swift-ci please smoke benchmark

@airspeedswift airspeedswift requested review from Rostepher and removed request for Rostepher February 14, 2018 03:48
@airspeedswift
Copy link
Member Author

sorry @Rostepher I mis-clicked you there...

@swift-ci
Copy link
Contributor

Build comment file:

Optimized (O)

Regression (10)
TEST OLD NEW DELTA SPEEDUP
Sim2DArray 412 599 +45.4% 0.69x
RangeIterationSigned 172 200 +16.3% 0.86x
PrefixWhileCountableRange 46 53 +15.2% 0.87x
StringMatch 7203 8176 +13.5% 0.88x
StringEqualPointerComparison 286 315 +10.1% 0.91x
SuffixCountableRange 11 12 +9.1% 0.92x
DropLastCountableRangeLazy 11 12 +9.1% 0.92x
PrefixSequenceLazy 1457 1578 +8.3% 0.92x
ObjectiveCBridgeToNSSet 43752 46350 +5.9% 0.94x
ObjectiveCBridgeStubFromArrayOfNSString 25792 27264 +5.7% 0.95x (?)
Improvement (21)
TEST OLD NEW DELTA SPEEDUP
PrefixWhileArray 105 88 -16.2% 1.19x
WordCountUniqueUTF16 25661 21659 -15.6% 1.18x (?)
MapReduceLazyCollectionShort 38 34 -10.5% 1.12x
NopDeinit 23816 21573 -9.4% 1.10x
PointerArithmetics 34371 31523 -8.3% 1.09x
CharIteration_utf16_unicodeScalars_Backwards 17246 15862 -8.0% 1.09x
LazilyFilteredRange 4128 3825 -7.3% 1.08x
CharIteration_tweet_unicodeScalars_Backwards 26698 25040 -6.2% 1.07x
CharIteration_ascii_unicodeScalars_Backwards 13522 12690 -6.2% 1.07x
CharIteration_chinese_unicodeScalars_Backwards 10247 9621 -6.1% 1.07x
CharIteration_russian_unicodeScalars_Backwards 11267 10582 -6.1% 1.06x
CharIteration_japanese_unicodeScalars_Backwards 16184 15211 -6.0% 1.06x
CharIteration_korean_unicodeScalars_Backwards 13109 12326 -6.0% 1.06x
ObjectiveCBridgeStubURLAppendPath 355529 334625 -5.9% 1.06x
DropFirstAnyCollectionLazy 69409 65364 -5.8% 1.06x (?)
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2473 2329 -5.8% 1.06x
OpenClose 160 151 -5.6% 1.06x
CharIteration_punctuated_unicodeScalars_Backwards 3086 2919 -5.4% 1.06x
LazilyFilteredArrayContains 37457 35502 -5.2% 1.06x
NibbleSort 4174 3961 -5.1% 1.05x
ObjectiveCBridgeFromNSDictionaryAnyObject 123926 117948 -4.8% 1.05x
No Changes (331)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3642 3634 -0.2% 1.00x (?)
AnyHashableWithAClass 69369 69581 +0.3% 1.00x (?)
Array2D 2556 2555 -0.0% 1.00x (?)
ArrayAppend 1021 1020 -0.1% 1.00x (?)
ArrayAppendArrayOfInt 801 798 -0.4% 1.00x (?)
ArrayAppendAscii 13251 13101 -1.1% 1.01x
ArrayAppendFromGeneric 797 804 +0.9% 0.99x (?)
ArrayAppendGenericStructs 1427 1428 +0.1% 1.00x (?)
ArrayAppendLatin1 38268 38092 -0.5% 1.00x
ArrayAppendLazyMap 1340 1341 +0.1% 1.00x (?)
ArrayAppendOptionals 1430 1426 -0.3% 1.00x (?)
ArrayAppendRepeatCol 1337 1338 +0.1% 1.00x (?)
ArrayAppendReserved 756 755 -0.1% 1.00x (?)
ArrayAppendSequence 1132 1134 +0.2% 1.00x (?)
ArrayAppendStrings 15322 15297 -0.2% 1.00x (?)
ArrayAppendToFromGeneric 798 799 +0.1% 1.00x (?)
ArrayAppendToGeneric 796 800 +0.5% 1.00x
ArrayAppendUTF16 37905 37560 -0.9% 1.01x
ArrayInClass 86 86 +0.0% 1.00x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 151 151 +0.0% 1.00x
ArrayOfGenericRef 4388 4387 -0.0% 1.00x (?)
ArrayOfPOD 183 184 +0.5% 0.99x
ArrayOfRef 4355 4406 +1.2% 0.99x
ArrayPlusEqualArrayOfInt 797 798 +0.1% 1.00x (?)
ArrayPlusEqualFiveElementCollection 5536 5525 -0.2% 1.00x (?)
ArrayPlusEqualSingleElementCollection 1023 1021 -0.2% 1.00x (?)
ArrayPlusEqualThreeElements 1657 1653 -0.2% 1.00x (?)
ArraySubscript 1527 1524 -0.2% 1.00x (?)
ArrayValueProp 8 8 +0.0% 1.00x
ArrayValueProp2 8 8 +0.0% 1.00x
ArrayValueProp3 8 8 +0.0% 1.00x
ArrayValueProp4 8 8 +0.0% 1.00x
BinaryFloatingPointConversionFromBinaryInteger 38 39 +2.6% 0.97x
BitCount 202 202 +0.0% 1.00x
ByteSwap 100 100 +0.0% 1.00x
COWTree 3605 3649 +1.2% 0.99x (?)
CSVParsing 765346 757689 -1.0% 1.01x (?)
CSVParsingAlt 727976 728871 +0.1% 1.00x (?)
CSVParsingAltIndices 355112 354018 -0.3% 1.00x (?)
CStringLongAscii 4778 4769 -0.2% 1.00x (?)
CStringLongNonAscii 2087 2083 -0.2% 1.00x (?)
CStringShortAscii 4715 4707 -0.2% 1.00x
Calculator 431 432 +0.2% 1.00x (?)
CaptureProp 9167 8881 -3.1% 1.03x
CharIndexing_ascii_unicodeScalars 15420 14736 -4.4% 1.05x
CharIndexing_ascii_unicodeScalars_Backwards 14349 14121 -1.6% 1.02x
CharIndexing_chinese_unicodeScalars 11675 11165 -4.4% 1.05x
CharIndexing_chinese_unicodeScalars_Backwards 10870 10698 -1.6% 1.02x
CharIndexing_japanese_unicodeScalars 18463 17657 -4.4% 1.05x
CharIndexing_japanese_unicodeScalars_Backwards 17162 16961 -1.2% 1.01x
CharIndexing_korean_unicodeScalars 14948 14312 -4.3% 1.04x
CharIndexing_korean_unicodeScalars_Backwards 13920 13691 -1.6% 1.02x
CharIndexing_punctuatedJapanese_unicodeScalars 2790 2680 -3.9% 1.04x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2616 2574 -1.6% 1.02x
CharIndexing_punctuated_unicodeScalars 3490 3348 -4.1% 1.04x
CharIndexing_punctuated_unicodeScalars_Backwards 3269 3213 -1.7% 1.02x
CharIndexing_russian_unicodeScalars 12844 12289 -4.3% 1.05x
CharIndexing_russian_unicodeScalars_Backwards 11969 11767 -1.7% 1.02x
CharIndexing_tweet_unicodeScalars 30316 29077 -4.1% 1.04x
CharIndexing_tweet_unicodeScalars_Backwards 28233 28504 +1.0% 0.99x
CharIndexing_utf16_unicodeScalars 20410 20329 -0.4% 1.00x
CharIndexing_utf16_unicodeScalars_Backwards 20989 21010 +0.1% 1.00x
CharIteration_ascii_unicodeScalars 20636 20952 +1.5% 0.98x (?)
CharIteration_chinese_unicodeScalars 15522 15820 +1.9% 0.98x
CharIteration_japanese_unicodeScalars 24624 25052 +1.7% 0.98x
CharIteration_korean_unicodeScalars 19998 20300 +1.5% 0.99x
CharIteration_punctuatedJapanese_unicodeScalars 3694 3723 +0.8% 0.99x
CharIteration_punctuated_unicodeScalars 4649 4690 +0.9% 0.99x
CharIteration_russian_unicodeScalars 17187 17415 +1.3% 0.99x
CharIteration_tweet_unicodeScalars 40690 41294 +1.5% 0.99x
CharIteration_utf16_unicodeScalars 27282 27641 +1.3% 0.99x
CharacterLiteralsLarge 6021 5980 -0.7% 1.01x (?)
CharacterLiteralsSmall 410 411 +0.2% 1.00x (?)
CharacterPropertiesFetch 4630 4701 +1.5% 0.98x (?)
CharacterPropertiesPrecomputed 1065 1071 +0.6% 0.99x
CharacterPropertiesStashed 1642 1628 -0.9% 1.01x (?)
CharacterPropertiesStashedMemo 1620 1610 -0.6% 1.01x (?)
Chars 970 969 -0.1% 1.00x (?)
ClassArrayGetter 15 15 +0.0% 1.00x
Combos 451 451 +0.0% 1.00x
DictOfArraysToArrayOfDicts 794 789 -0.6% 1.01x (?)
Dictionary 507 503 -0.8% 1.01x (?)
Dictionary2 1621 1636 +0.9% 0.99x
Dictionary2OfObjects 2960 2999 +1.3% 0.99x (?)
Dictionary3 239 244 +2.1% 0.98x (?)
Dictionary3OfObjects 678 685 +1.0% 0.99x (?)
Dictionary4 145 147 +1.4% 0.99x
Dictionary4OfObjects 201 201 +0.0% 1.00x
DictionaryBridge 1994 2050 +2.8% 0.97x (?)
DictionaryGroup 132 133 +0.8% 0.99x
DictionaryGroupOfObjects 1954 1965 +0.6% 0.99x
DictionaryLiteral 1681 1611 -4.2% 1.04x (?)
DictionaryOfObjects 2170 2168 -0.1% 1.00x (?)
DictionaryRemove 2773 2758 -0.5% 1.01x (?)
DictionaryRemoveOfObjects 23677 23744 +0.3% 1.00x (?)
DictionarySubscriptDefaultMutation 145 144 -0.7% 1.01x (?)
DictionarySubscriptDefaultMutationArray 495 495 +0.0% 1.00x
DictionarySubscriptDefaultMutationArrayOfObjects 3825 3811 -0.4% 1.00x
DictionarySubscriptDefaultMutationOfObjects 1388 1385 -0.2% 1.00x (?)
DictionarySwap 472 471 -0.2% 1.00x
DictionarySwapOfObjects 7512 7466 -0.6% 1.01x
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 76 76 +0.0% 1.00x
DropFirstAnySeqCRangeIter 163 163 +0.0% 1.00x
DropFirstAnySeqCRangeIterLazy 163 163 +0.0% 1.00x
DropFirstAnySeqCntRange 71 71 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 71 71 +0.0% 1.00x
DropFirstAnySequence 1841 1850 +0.5% 1.00x
DropFirstAnySequenceLazy 1842 1842 +0.0% 1.00x
DropFirstArray 35 35 +0.0% 1.00x
DropFirstArrayLazy 35 35 +0.0% 1.00x
DropFirstCountableRange 35 35 +0.0% 1.00x
DropFirstCountableRangeLazy 35 35 +0.0% 1.00x
DropFirstSequence 2702 2701 -0.0% 1.00x (?)
DropFirstSequenceLazy 2874 2806 -2.4% 1.02x (?)
DropLastAnyCollection 28 28 +0.0% 1.00x
DropLastAnyCollectionLazy 22729 21831 -4.0% 1.04x (?)
DropLastAnySeqCRangeIter 3526 3543 +0.5% 1.00x (?)
DropLastAnySeqCRangeIterLazy 3551 3526 -0.7% 1.01x (?)
DropLastAnySeqCntRange 23 23 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 23 23 +0.0% 1.00x
DropLastAnySequence 5145 5126 -0.4% 1.00x (?)
DropLastAnySequenceLazy 5244 5227 -0.3% 1.00x
DropLastCountableRange 11 11 +0.0% 1.00x
DropLastSequence 648 637 -1.7% 1.02x
DropLastSequenceLazy 647 636 -1.7% 1.02x
DropWhileAnyCollection 100 100 +0.0% 1.00x
DropWhileAnyCollectionLazy 153 153 +0.0% 1.00x
DropWhileAnySeqCRangeIter 157 157 +0.0% 1.00x
DropWhileAnySeqCRangeIterLazy 153 153 +0.0% 1.00x
DropWhileAnySeqCntRange 95 95 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 153 153 +0.0% 1.00x
DropWhileAnySequence 1860 1863 +0.2% 1.00x
DropWhileAnySequenceLazy 1857 1855 -0.1% 1.00x
DropWhileArrayLazy 129 129 +0.0% 1.00x
DropWhileCountableRange 36 36 +0.0% 1.00x
DropWhileCountableRangeLazy 111 111 +0.0% 1.00x
DropWhileSequence 1341 1341 +0.0% 1.00x
DropWhileSequenceLazy 88 88 +0.0% 1.00x
EqualStringSubstring 433 434 +0.2% 1.00x (?)
EqualSubstringString 434 433 -0.2% 1.00x
EqualSubstringSubstring 433 433 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 434 434 +0.0% 1.00x
ErrorHandling 2308 2323 +0.6% 0.99x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FilterEvenUsingReduce 1318 1307 -0.8% 1.01x (?)
FilterEvenUsingReduceInto 150 148 -1.3% 1.01x
FrequenciesUsingReduce 6751 6848 +1.4% 0.99x (?)
FrequenciesUsingReduceInto 3208 3213 +0.2% 1.00x (?)
Hanoi 3509 3367 -4.0% 1.04x
HashTest 1750 1729 -1.2% 1.01x (?)
Histogram 322 322 +0.0% 1.00x
Integrate 217 217 +0.0% 1.00x
IterateData 1389 1351 -2.7% 1.03x
Join 372 369 -0.8% 1.01x (?)
LazilyFilteredArrays 65059 66987 +3.0% 0.97x (?)
LessSubstringSubstring 432 432 +0.0% 1.00x
LessSubstringSubstringGenericComparable 432 432 +0.0% 1.00x
LinkedList 7595 7574 -0.3% 1.00x (?)
LuhnAlgoEager 585 584 -0.2% 1.00x (?)
LuhnAlgoLazy 583 583 +0.0% 1.00x
MapReduce 399 399 +0.0% 1.00x
MapReduceAnyCollection 399 399 +0.0% 1.00x
MapReduceAnyCollectionShort 2072 2062 -0.5% 1.00x (?)
MapReduceClass 3056 3045 -0.4% 1.00x
MapReduceClassShort 4623 4579 -1.0% 1.01x
MapReduceLazyCollection 13 13 +0.0% 1.00x
MapReduceLazySequence 86 86 +0.0% 1.00x
MapReduceSequence 460 460 +0.0% 1.00x
MapReduceShort 2025 2029 +0.2% 1.00x (?)
MapReduceShortString 21 21 +0.0% 1.00x
MapReduceString 81 83 +2.5% 0.98x
Memset 218 214 -1.8% 1.02x (?)
MonteCarloE 10317 10296 -0.2% 1.00x (?)
MonteCarloPi 42942 43045 +0.2% 1.00x
NSDictionaryCastToSwift 5398 5311 -1.6% 1.02x (?)
NSError 303 304 +0.3% 1.00x (?)
NSStringConversion 286 283 -1.0% 1.01x
ObjectAllocation 183 183 +0.0% 1.00x
ObjectiveCBridgeFromNSArrayAnyObject 19240 19973 +3.8% 0.96x
ObjectiveCBridgeFromNSArrayAnyObjectForced 4104 4255 +3.7% 0.96x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 38513 38486 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 33098 33848 +2.3% 0.98x (?)
ObjectiveCBridgeFromNSSetAnyObject 61574 60954 -1.0% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4272 4262 -0.2% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 72580 72312 -0.4% 1.00x (?)
ObjectiveCBridgeFromNSString 1342 1343 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSStringForced 2363 2367 +0.2% 1.00x (?)
ObjectiveCBridgeStubDataAppend 3887 3993 +2.7% 0.97x (?)
ObjectiveCBridgeStubDateMutation 258 257 -0.4% 1.00x
ObjectiveCBridgeStubFromNSDate 4132 3975 -3.8% 1.04x (?)
ObjectiveCBridgeStubFromNSString 862 878 +1.9% 0.98x (?)
ObjectiveCBridgeStubFromNSStringRef 156 161 +3.2% 0.97x
ObjectiveCBridgeStubNSDataAppend 2543 2622 +3.1% 0.97x (?)
ObjectiveCBridgeStubNSDateMutationRef 12953 13097 +1.1% 0.99x (?)
ObjectiveCBridgeStubToArrayOfNSString 29274 28821 -1.5% 1.02x (?)
ObjectiveCBridgeStubToNSDate 15327 15801 +3.1% 0.97x
ObjectiveCBridgeStubToNSDateRef 3449 3451 +0.1% 1.00x (?)
ObjectiveCBridgeStubToNSString 1515 1517 +0.1% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 115 116 +0.9% 0.99x (?)
ObjectiveCBridgeStubURLAppendPathRef 348269 349299 +0.3% 1.00x (?)
ObjectiveCBridgeToNSArray 29524 28994 -1.8% 1.02x (?)
ObjectiveCBridgeToNSDictionary 56735 55440 -2.3% 1.02x (?)
ObjectiveCBridgeToNSString 1297 1297 +0.0% 1.00x
ObserverClosure 2184 2162 -1.0% 1.01x
ObserverForwarderStruct 992 998 +0.6% 0.99x (?)
ObserverPartiallyAppliedMethod 3725 3712 -0.3% 1.00x
ObserverUnappliedMethod 2388 2358 -1.3% 1.01x (?)
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 4085 4030 -1.3% 1.01x
PolymorphicCalls 25 25 +0.0% 1.00x
PopFrontArray 1947 1948 +0.1% 1.00x (?)
PopFrontArrayGeneric 1877 1964 +4.6% 0.96x (?)
PopFrontUnsafePointer 9403 9534 +1.4% 0.99x (?)
PrefixAnyCollection 76 76 +0.0% 1.00x
PrefixAnyCollectionLazy 65340 65387 +0.1% 1.00x (?)
PrefixAnySeqCRangeIter 128 128 +0.0% 1.00x
PrefixAnySeqCRangeIterLazy 128 128 +0.0% 1.00x
PrefixAnySeqCntRange 71 71 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 71 71 +0.0% 1.00x
PrefixAnySequence 1366 1378 +0.9% 0.99x
PrefixAnySequenceLazy 1379 1378 -0.1% 1.00x (?)
PrefixArray 35 35 +0.0% 1.00x
PrefixArrayLazy 35 35 +0.0% 1.00x
PrefixCountableRange 35 35 +0.0% 1.00x
PrefixCountableRangeLazy 35 35 +0.0% 1.00x
PrefixSequence 1348 1326 -1.6% 1.02x (?)
PrefixWhileAnyCollection 147 146 -0.7% 1.01x
PrefixWhileAnyCollectionLazy 106 106 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 417 417 +0.0% 1.00x
PrefixWhileAnySeqCRangeIterLazy 106 106 +0.0% 1.00x
PrefixWhileAnySeqCntRange 142 142 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 106 106 +0.0% 1.00x
PrefixWhileAnySequence 1554 1540 -0.9% 1.01x
PrefixWhileAnySequenceLazy 1392 1391 -0.1% 1.00x (?)
PrefixWhileArrayLazy 70 70 +0.0% 1.00x
PrefixWhileCountableRangeLazy 35 35 +0.0% 1.00x
PrefixWhileSequence 357 357 +0.0% 1.00x
PrefixWhileSequenceLazy 52 52 +0.0% 1.00x
Prims 758 755 -0.4% 1.00x (?)
PrimsSplit 755 760 +0.7% 0.99x
QueueConcrete 1307 1309 +0.2% 1.00x
QueueGeneric 1157 1156 -0.1% 1.00x (?)
RC4 171 171 +0.0% 1.00x
RGBHistogram 2948 2954 +0.2% 1.00x (?)
RGBHistogramOfObjects 23866 23769 -0.4% 1.00x (?)
RangeAssignment 351 352 +0.3% 1.00x (?)
RangeIterationSigned64 200 200 +0.0% 1.00x
RangeIterationUnsigned 200 200 +0.0% 1.00x
RangeReplaceableCollectionPlusDefault 987 985 -0.2% 1.00x (?)
RecursiveOwnedParameter 2374 2325 -2.1% 1.02x
ReversedArray 57 57 +0.0% 1.00x
ReversedBidirectional 15477 15402 -0.5% 1.00x
ReversedDictionary 125 126 +0.8% 0.99x (?)
RomanNumbers 116398 116496 +0.1% 1.00x (?)
SetExclusiveOr 3459 3438 -0.6% 1.01x (?)
SetExclusiveOr_OfObjects 8778 8898 +1.4% 0.99x
SetIntersect 335 332 -0.9% 1.01x
SetIntersect_OfObjects 1767 1771 +0.2% 1.00x
SetIsSubsetOf 299 299 +0.0% 1.00x
SetIsSubsetOf_OfObjects 366 366 +0.0% 1.00x
SetUnion 3160 3237 +2.4% 0.98x
SetUnion_OfObjects 7258 7294 +0.5% 1.00x
SevenBoom 1519 1525 +0.4% 1.00x (?)
SortLargeExistentials 7026 7028 +0.0% 1.00x (?)
SortLettersInPlace 1160 1153 -0.6% 1.01x (?)
SortSortedStrings 1137 1139 +0.2% 1.00x
SortStrings 1994 1998 +0.2% 1.00x (?)
SortStringsUnicode 15461 15388 -0.5% 1.00x
StackPromo 22192 22185 -0.0% 1.00x (?)
StaticArray 5 5 +0.0% 1.00x
StrComplexWalk 1560 1562 +0.1% 1.00x
StrToInt 2116 2079 -1.7% 1.02x
StringAdder 4200 4170 -0.7% 1.01x (?)
StringBuilder 1372 1365 -0.5% 1.01x (?)
StringBuilderLong 1085 1094 +0.8% 0.99x (?)
StringComparison_abnormal 859 855 -0.5% 1.00x (?)
StringComparison_ascii 962 959 -0.3% 1.00x (?)
StringComparison_emoji 2541 2535 -0.2% 1.00x (?)
StringComparison_fastPrenormal 8705 8685 -0.2% 1.00x (?)
StringComparison_latin1 5983 5989 +0.1% 1.00x (?)
StringComparison_longSharedPrefix 11521 11520 -0.0% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 4656 4652 -0.1% 1.00x (?)
StringComparison_slowerPrenormal 4163 4181 +0.4% 1.00x (?)
StringComparison_zalgo 1732 1733 +0.1% 1.00x (?)
StringEdits 116941 116114 -0.7% 1.01x (?)
StringEnumRawValueInitialization 958 958 +0.0% 1.00x
StringFromLongWholeSubstring 21 21 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 10 10 +0.0% 1.00x
StringHasPrefixAscii 1317 1318 +0.1% 1.00x (?)
StringHasPrefixUnicode 27819 27920 +0.4% 1.00x (?)
StringHasSuffixAscii 1460 1432 -1.9% 1.02x
StringHasSuffixUnicode 84774 84859 +0.1% 1.00x (?)
StringInterpolation 10732 10668 -0.6% 1.01x (?)
StringRemoveDupes 1207 1209 +0.2% 1.00x (?)
StringUTF16Builder 2392 2378 -0.6% 1.01x (?)
StringWalk 1481 1427 -3.6% 1.04x
StringWithCString 42574 42598 +0.1% 1.00x (?)
StringWordBuilder 1723 1718 -0.3% 1.00x (?)
StringWordBuilderReservingCapacity 1291 1284 -0.5% 1.01x
SubstringComparable 2080 2080 +0.0% 1.00x
SubstringEqualString 2111 2110 -0.0% 1.00x (?)
SubstringEquatable 3177 3175 -0.1% 1.00x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 69 69 +0.0% 1.00x
SuffixAnyCollection 28 28 +0.0% 1.00x
SuffixAnyCollectionLazy 21816 21823 +0.0% 1.00x (?)
SuffixAnySeqCRangeIter 3812 3800 -0.3% 1.00x (?)
SuffixAnySeqCRangeIterLazy 3805 3820 +0.4% 1.00x (?)
SuffixAnySeqCntRange 23 23 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 23 23 +0.0% 1.00x
SuffixAnySequence 5146 5128 -0.3% 1.00x
SuffixAnySequenceLazy 5305 5228 -1.5% 1.01x
SuffixCountableRangeLazy 11 11 +0.0% 1.00x
SuffixSequence 3787 3753 -0.9% 1.01x (?)
SuffixSequenceLazy 3797 3748 -1.3% 1.01x
SumUsingReduce 96 98 +2.1% 0.98x
SumUsingReduceInto 96 97 +1.0% 0.99x
SuperChars 42549 43089 +1.3% 0.99x (?)
TwoSum 993 997 +0.4% 1.00x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 327 317 -3.1% 1.03x
Walsh 437 430 -1.6% 1.02x
WordCountHistogramASCII 8102 7933 -2.1% 1.02x
WordCountHistogramUTF16 57075 54519 -4.5% 1.05x (?)
WordCountUniqueASCII 1798 1801 +0.2% 1.00x (?)
WordSplitASCII 20971 21247 +1.3% 0.99x (?)
WordSplitUTF16 21722 22100 +1.7% 0.98x (?)
XorLoop 393 394 +0.3% 1.00x (?)

Unoptimized (Onone)

Regression (16)
TEST OLD NEW DELTA SPEEDUP
BitCount 2097 7601 +262.5% 0.28x
ByteSwap 3902 9204 +135.9% 0.42x
MonteCarloPi 3901004 5545491 +42.2% 0.70x
ArraySubscript 83390 113790 +36.5% 0.73x
NibbleSort 303565 410025 +35.1% 0.74x
MonteCarloE 925034 1228437 +32.8% 0.75x
HashTest 16968 21599 +27.3% 0.79x
CharIteration_chinese_unicodeScalars_Backwards 256025 278880 +8.9% 0.92x
ArrayAppendUTF16 63812 69192 +8.4% 0.92x (?)
WordCountUniqueUTF16 33093 35411 +7.0% 0.93x (?)
NSError 728 777 +6.7% 0.94x (?)
CharIndexing_tweet_unicodeScalars_Backwards 860406 918151 +6.7% 0.94x (?)
ReversedBidirectional 42187 44810 +6.2% 0.94x (?)
Combos 2169 2297 +5.9% 0.94x
ObjectiveCBridgeStubToNSDate 15990 16887 +5.6% 0.95x (?)
ObjectiveCBridgeFromNSString 3170 3339 +5.3% 0.95x
Improvement (10)
TEST OLD NEW DELTA SPEEDUP
ObjectiveCBridgeFromNSSetAnyObject 66177 61102 -7.7% 1.08x (?)
ErrorHandling 7310 6769 -7.4% 1.08x (?)
CSVParsingAltIndices 2571198 2404876 -6.5% 1.07x
SuffixAnyCollectionLazy 34709 32565 -6.2% 1.07x (?)
StringInterpolation 14631 13733 -6.1% 1.07x (?)
DropLastAnyCollectionLazy 34361 32436 -5.6% 1.06x (?)
CharIndexing_chinese_unicodeScalars 322237 304908 -5.4% 1.06x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 131758 124764 -5.3% 1.06x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 101427 96237 -5.1% 1.05x (?)
COWTree 11812 11227 -5.0% 1.05x
No Changes (336)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 5214 5097 -2.2% 1.02x (?)
AnyHashableWithAClass 86797 86531 -0.3% 1.00x (?)
Array2D 632884 632476 -0.1% 1.00x (?)
ArrayAppend 4561 4555 -0.1% 1.00x (?)
ArrayAppendArrayOfInt 860 862 +0.2% 1.00x (?)
ArrayAppendAscii 40439 40405 -0.1% 1.00x (?)
ArrayAppendFromGeneric 867 863 -0.5% 1.00x (?)
ArrayAppendGenericStructs 1474 1502 +1.9% 0.98x (?)
ArrayAppendLatin1 63833 63808 -0.0% 1.00x (?)
ArrayAppendLazyMap 167464 167258 -0.1% 1.00x
ArrayAppendOptionals 1499 1501 +0.1% 1.00x (?)
ArrayAppendRepeatCol 170078 170206 +0.1% 1.00x (?)
ArrayAppendReserved 4282 4282 +0.0% 1.00x
ArrayAppendSequence 143250 143433 +0.1% 1.00x
ArrayAppendStrings 15446 15387 -0.4% 1.00x
ArrayAppendToFromGeneric 861 875 +1.6% 0.98x
ArrayAppendToGeneric 866 868 +0.2% 1.00x (?)
ArrayInClass 6316 6247 -1.1% 1.01x (?)
ArrayLiteral 1781 1787 +0.3% 1.00x (?)
ArrayOfGenericPOD2 1072 1074 +0.2% 1.00x (?)
ArrayOfGenericRef 10092 10090 -0.0% 1.00x (?)
ArrayOfPOD 759 759 +0.0% 1.00x
ArrayOfRef 9291 9279 -0.1% 1.00x (?)
ArrayPlusEqualArrayOfInt 861 860 -0.1% 1.00x (?)
ArrayPlusEqualFiveElementCollection 235208 233874 -0.6% 1.01x (?)
ArrayPlusEqualSingleElementCollection 234729 230413 -1.8% 1.02x
ArrayPlusEqualThreeElements 9453 9202 -2.7% 1.03x (?)
ArrayValueProp 3618 3615 -0.1% 1.00x (?)
ArrayValueProp2 16189 16265 +0.5% 1.00x (?)
ArrayValueProp3 4156 4153 -0.1% 1.00x (?)
ArrayValueProp4 4114 4113 -0.0% 1.00x (?)
BinaryFloatingPointConversionFromBinaryInteger 6124 6190 +1.1% 0.99x (?)
CSVParsing 2423996 2519638 +3.9% 0.96x
CSVParsingAlt 1345467 1341673 -0.3% 1.00x (?)
CStringLongAscii 4756 4768 +0.3% 1.00x (?)
CStringLongNonAscii 2148 2163 +0.7% 0.99x (?)
CStringShortAscii 7725 7732 +0.1% 1.00x (?)
Calculator 1546 1535 -0.7% 1.01x (?)
CaptureProp 258873 258837 -0.0% 1.00x (?)
CharIndexing_ascii_unicodeScalars 423599 430924 +1.7% 0.98x (?)
CharIndexing_ascii_unicodeScalars_Backwards 434352 450369 +3.7% 0.96x (?)
CharIndexing_chinese_unicodeScalars_Backwards 325457 330950 +1.7% 0.98x (?)
CharIndexing_japanese_unicodeScalars 486769 475910 -2.2% 1.02x
CharIndexing_japanese_unicodeScalars_Backwards 527686 554452 +5.1% 0.95x (?)
CharIndexing_korean_unicodeScalars 399209 394056 -1.3% 1.01x (?)
CharIndexing_korean_unicodeScalars_Backwards 421393 418989 -0.6% 1.01x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 70003 70890 +1.3% 0.99x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 76480 77811 +1.7% 0.98x (?)
CharIndexing_punctuated_unicodeScalars 92697 95202 +2.7% 0.97x (?)
CharIndexing_russian_unicodeScalars 334346 332681 -0.5% 1.01x (?)
CharIndexing_russian_unicodeScalars_Backwards 385274 386190 +0.2% 1.00x (?)
CharIndexing_tweet_unicodeScalars 817210 831694 +1.8% 0.98x (?)
CharIndexing_utf16_unicodeScalars 337787 323888 -4.1% 1.04x (?)
CharIndexing_utf16_unicodeScalars_Backwards 359674 351835 -2.2% 1.02x (?)
CharIteration_ascii_unicodeScalars 154850 154201 -0.4% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 330931 342045 +3.4% 0.97x (?)
CharIteration_chinese_unicodeScalars 117106 116844 -0.2% 1.00x (?)
CharIteration_japanese_unicodeScalars 185658 184607 -0.6% 1.01x (?)
CharIteration_japanese_unicodeScalars_Backwards 410238 409347 -0.2% 1.00x (?)
CharIteration_korean_unicodeScalars 150309 149548 -0.5% 1.01x (?)
CharIteration_korean_unicodeScalars_Backwards 342762 348351 +1.6% 0.98x (?)
CharIteration_punctuatedJapanese_unicodeScalars 27680 27654 -0.1% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 57778 58909 +2.0% 0.98x (?)
CharIteration_punctuated_unicodeScalars 34810 34670 -0.4% 1.00x (?)
CharIteration_punctuated_unicodeScalars_Backwards 73365 74282 +1.2% 0.99x (?)
CharIteration_russian_unicodeScalars 128950 128516 -0.3% 1.00x (?)
CharIteration_russian_unicodeScalars_Backwards 285703 285163 -0.2% 1.00x (?)
CharIteration_tweet_unicodeScalars 305747 304737 -0.3% 1.00x
CharIteration_tweet_unicodeScalars_Backwards 683011 677293 -0.8% 1.01x (?)
CharIteration_utf16_unicodeScalars 130888 131092 +0.2% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 293856 279916 -4.7% 1.05x (?)
CharacterLiteralsLarge 5895 5890 -0.1% 1.00x (?)
CharacterLiteralsSmall 668 637 -4.6% 1.05x
CharacterPropertiesFetch 5366 5553 +3.5% 0.97x (?)
CharacterPropertiesPrecomputed 4266 4352 +2.0% 0.98x (?)
CharacterPropertiesStashed 2343 2308 -1.5% 1.02x (?)
CharacterPropertiesStashedMemo 5422 5323 -1.8% 1.02x (?)
Chars 40353 39739 -1.5% 1.02x
ClassArrayGetter 985 986 +0.1% 1.00x (?)
DictOfArraysToArrayOfDicts 3445 3505 +1.7% 0.98x (?)
Dictionary 2583 2586 +0.1% 1.00x (?)
Dictionary2 2877 2873 -0.1% 1.00x (?)
Dictionary2OfObjects 5785 5513 -4.7% 1.05x (?)
Dictionary3 1280 1286 +0.5% 1.00x (?)
Dictionary3OfObjects 2286 2259 -1.2% 1.01x (?)
Dictionary4 1190 1186 -0.3% 1.00x (?)
Dictionary4OfObjects 1830 1825 -0.3% 1.00x (?)
DictionaryBridge 2088 2104 +0.8% 0.99x (?)
DictionaryGroup 4230 4228 -0.0% 1.00x (?)
DictionaryGroupOfObjects 7530 7576 +0.6% 0.99x (?)
DictionaryLiteral 8823 9071 +2.8% 0.97x (?)
DictionaryOfObjects 6344 6479 +2.1% 0.98x (?)
DictionaryRemove 18193 18226 +0.2% 1.00x (?)
DictionaryRemoveOfObjects 49708 49517 -0.4% 1.00x (?)
DictionarySubscriptDefaultMutation 2120 2109 -0.5% 1.01x (?)
DictionarySubscriptDefaultMutationArray 2373 2381 +0.3% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 9039 9210 +1.9% 0.98x (?)
DictionarySubscriptDefaultMutationOfObjects 5690 5862 +3.0% 0.97x (?)
DictionarySwap 5447 5427 -0.4% 1.00x (?)
DictionarySwapOfObjects 22131 22586 +2.1% 0.98x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 13496 13530 +0.3% 1.00x (?)
DropFirstAnyCollectionLazy 101596 98645 -2.9% 1.03x (?)
DropFirstAnySeqCRangeIter 20251 20230 -0.1% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 20634 20509 -0.6% 1.01x
DropFirstAnySeqCntRange 13485 13536 +0.4% 1.00x (?)
DropFirstAnySeqCntRangeLazy 13515 13625 +0.8% 0.99x
DropFirstAnySequence 10849 10839 -0.1% 1.00x (?)
DropFirstAnySequenceLazy 10722 10730 +0.1% 1.00x (?)
DropFirstArray 3741 3869 +3.4% 0.97x (?)
DropFirstArrayLazy 24997 25005 +0.0% 1.00x (?)
DropFirstCountableRange 325 325 +0.0% 1.00x
DropFirstCountableRangeLazy 26693 26726 +0.1% 1.00x (?)
DropFirstSequence 10317 10343 +0.3% 1.00x (?)
DropFirstSequenceLazy 10423 10422 -0.0% 1.00x (?)
DropLastAnyCollection 4534 4521 -0.3% 1.00x (?)
DropLastAnySeqCRangeIter 37537 37729 +0.5% 0.99x
DropLastAnySeqCRangeIterLazy 37275 37313 +0.1% 1.00x
DropLastAnySeqCntRange 4492 4507 +0.3% 1.00x (?)
DropLastAnySeqCntRangeLazy 4499 4512 +0.3% 1.00x (?)
DropLastAnySequence 28964 28842 -0.4% 1.00x (?)
DropLastAnySequenceLazy 28937 28763 -0.6% 1.01x
DropLastCountableRange 112 112 +0.0% 1.00x
DropLastCountableRangeLazy 8870 8868 -0.0% 1.00x (?)
DropLastSequence 28695 28855 +0.6% 0.99x
DropLastSequenceLazy 28729 28599 -0.5% 1.00x (?)
DropWhileAnyCollection 17259 17256 -0.0% 1.00x (?)
DropWhileAnyCollectionLazy 19074 19096 +0.1% 1.00x (?)
DropWhileAnySeqCRangeIter 22120 22111 -0.0% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 19124 19108 -0.1% 1.00x (?)
DropWhileAnySeqCntRange 17541 17211 -1.9% 1.02x
DropWhileAnySeqCntRangeLazy 19138 19140 +0.0% 1.00x (?)
DropWhileAnySequence 12196 12093 -0.8% 1.01x
DropWhileAnySequenceLazy 10045 10017 -0.3% 1.00x
DropWhileArrayLazy 13721 13725 +0.0% 1.00x (?)
DropWhileCountableRange 4140 4149 +0.2% 1.00x
DropWhileCountableRangeLazy 18603 18609 +0.0% 1.00x (?)
DropWhileSequence 11958 11831 -1.1% 1.01x
DropWhileSequenceLazy 9657 9613 -0.5% 1.00x
EqualStringSubstring 476 476 +0.0% 1.00x
EqualSubstringString 477 477 +0.0% 1.00x
EqualSubstringSubstring 477 477 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 486 486 +0.0% 1.00x
ExclusivityGlobal 183 188 +2.7% 0.97x
ExclusivityIndependent 69 70 +1.4% 0.99x (?)
FilterEvenUsingReduce 3764 3789 +0.7% 0.99x (?)
FilterEvenUsingReduceInto 1978 1983 +0.3% 1.00x (?)
FrequenciesUsingReduce 10993 10615 -3.4% 1.04x (?)
FrequenciesUsingReduceInto 5548 5593 +0.8% 0.99x (?)
Hanoi 19939 19989 +0.3% 1.00x
Histogram 6561 6574 +0.2% 1.00x (?)
Integrate 821 860 +4.8% 0.95x
IterateData 7875 7870 -0.1% 1.00x (?)
Join 1108 1109 +0.1% 1.00x (?)
LazilyFilteredArrayContains 772658 769592 -0.4% 1.00x
LazilyFilteredArrays 1461803 1476001 +1.0% 0.99x (?)
LazilyFilteredRange 463686 464217 +0.1% 1.00x (?)
LessSubstringSubstring 475 475 +0.0% 1.00x
LessSubstringSubstringGenericComparable 484 484 +0.0% 1.00x
LinkedList 32233 32012 -0.7% 1.01x
LuhnAlgoEager 5252 5350 +1.9% 0.98x (?)
LuhnAlgoLazy 5583 5342 -4.3% 1.05x
MapReduce 27470 27256 -0.8% 1.01x
MapReduceAnyCollection 27457 27415 -0.2% 1.00x
MapReduceAnyCollectionShort 39361 39474 +0.3% 1.00x (?)
MapReduceClass 31948 31949 +0.0% 1.00x (?)
MapReduceClassShort 44401 43797 -1.4% 1.01x (?)
MapReduceLazyCollection 23758 23916 +0.7% 0.99x (?)
MapReduceLazyCollectionShort 33587 33846 +0.8% 0.99x (?)
MapReduceLazySequence 18016 18021 +0.0% 1.00x
MapReduceSequence 30597 30538 -0.2% 1.00x
MapReduceShort 39253 38534 -1.8% 1.02x (?)
MapReduceShortString 254 243 -4.3% 1.05x (?)
MapReduceString 1928 1923 -0.3% 1.00x (?)
Memset 44758 44755 -0.0% 1.00x (?)
NSDictionaryCastToSwift 6599 6397 -3.1% 1.03x (?)
NSStringConversion 326 327 +0.3% 1.00x
NopDeinit 167795 169258 +0.9% 0.99x (?)
ObjectAllocation 1364 1372 +0.6% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObject 22669 23862 +5.3% 0.95x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 8455 8483 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 41795 40985 -1.9% 1.02x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 35906 36056 +0.4% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 6722 6439 -4.2% 1.04x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 77955 75855 -2.7% 1.03x (?)
ObjectiveCBridgeFromNSStringForced 2672 2680 +0.3% 1.00x (?)
ObjectiveCBridgeStubDataAppend 4322 4302 -0.5% 1.00x (?)
ObjectiveCBridgeStubDateMutation 611 602 -1.5% 1.01x
ObjectiveCBridgeStubFromArrayOfNSString 27070 26800 -1.0% 1.01x (?)
ObjectiveCBridgeStubFromNSDate 4535 4766 +5.1% 0.95x (?)
ObjectiveCBridgeStubFromNSString 931 929 -0.2% 1.00x (?)
ObjectiveCBridgeStubFromNSStringRef 199 197 -1.0% 1.01x (?)
ObjectiveCBridgeStubNSDataAppend 2950 3006 +1.9% 0.98x (?)
ObjectiveCBridgeStubNSDateMutationRef 16505 16194 -1.9% 1.02x (?)
ObjectiveCBridgeStubToArrayOfNSString 28499 28692 +0.7% 0.99x (?)
ObjectiveCBridgeStubToNSDateRef 3474 3475 +0.0% 1.00x (?)
ObjectiveCBridgeStubToNSString 1574 1585 +0.7% 0.99x
ObjectiveCBridgeStubToNSStringRef 159 156 -1.9% 1.02x
ObjectiveCBridgeStubURLAppendPath 340532 338515 -0.6% 1.01x (?)
ObjectiveCBridgeStubURLAppendPathRef 346625 349517 +0.8% 0.99x (?)
ObjectiveCBridgeToNSArray 29205 29209 +0.0% 1.00x (?)
ObjectiveCBridgeToNSDictionary 57453 55483 -3.4% 1.04x
ObjectiveCBridgeToNSSet 45973 46883 +2.0% 0.98x
ObjectiveCBridgeToNSString 1344 1347 +0.2% 1.00x (?)
ObserverClosure 6344 6325 -0.3% 1.00x
ObserverForwarderStruct 4573 4544 -0.6% 1.01x
ObserverPartiallyAppliedMethod 7982 8014 +0.4% 1.00x (?)
ObserverUnappliedMethod 8118 8142 +0.3% 1.00x (?)
OpenClose 524 507 -3.2% 1.03x
PartialApplyDynamicType 43043 41548 -3.5% 1.04x (?)
Phonebook 20223 20519 +1.5% 0.99x
PointerArithmetics 111730 113280 +1.4% 0.99x (?)
PolymorphicCalls 6411 6458 +0.7% 0.99x (?)
PopFrontArray 4612 4624 +0.3% 1.00x (?)
PopFrontArrayGeneric 5685 5843 +2.8% 0.97x
PopFrontUnsafePointer 11202 10766 -3.9% 1.04x (?)
PrefixAnyCollection 13538 13648 +0.8% 0.99x
PrefixAnyCollectionLazy 97674 101990 +4.4% 0.96x (?)
PrefixAnySeqCRangeIter 16451 16272 -1.1% 1.01x (?)
PrefixAnySeqCRangeIterLazy 16567 16462 -0.6% 1.01x (?)
PrefixAnySeqCntRange 13466 13486 +0.1% 1.00x (?)
PrefixAnySeqCntRangeLazy 13494 13577 +0.6% 0.99x
PrefixAnySequence 9072 9055 -0.2% 1.00x (?)
PrefixAnySequenceLazy 8956 8904 -0.6% 1.01x (?)
PrefixArray 3777 3877 +2.6% 0.97x (?)
PrefixArrayLazy 24937 24948 +0.0% 1.00x
PrefixCountableRange 325 325 +0.0% 1.00x
PrefixCountableRangeLazy 26602 26686 +0.3% 1.00x
PrefixSequence 8662 8720 +0.7% 0.99x (?)
PrefixSequenceLazy 8714 8731 +0.2% 1.00x (?)
PrefixWhileAnyCollection 24791 24760 -0.1% 1.00x (?)
PrefixWhileAnyCollectionLazy 15935 15828 -0.7% 1.01x
PrefixWhileAnySeqCRangeIter 32993 32951 -0.1% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 15871 15978 +0.7% 0.99x
PrefixWhileAnySeqCntRange 24767 24732 -0.1% 1.00x (?)
PrefixWhileAnySeqCntRangeLazy 15817 15898 +0.5% 0.99x (?)
PrefixWhileAnySequence 26615 26529 -0.3% 1.00x (?)
PrefixWhileAnySequenceLazy 9087 9118 +0.3% 1.00x
PrefixWhileArray 11511 11497 -0.1% 1.00x
PrefixWhileArrayLazy 12008 11903 -0.9% 1.01x
PrefixWhileCountableRange 11703 11665 -0.3% 1.00x (?)
PrefixWhileCountableRangeLazy 15570 15551 -0.1% 1.00x (?)
PrefixWhileSequence 26246 26208 -0.1% 1.00x (?)
PrefixWhileSequenceLazy 8819 8912 +1.1% 0.99x
Prims 9667 9612 -0.6% 1.01x (?)
PrimsSplit 9735 9674 -0.6% 1.01x (?)
QueueConcrete 15244 15193 -0.3% 1.00x (?)
QueueGeneric 19132 19188 +0.3% 1.00x (?)
RC4 16656 16653 -0.0% 1.00x (?)
RGBHistogram 26824 26645 -0.7% 1.01x (?)
RGBHistogramOfObjects 96346 98189 +1.9% 0.98x (?)
RangeAssignment 2708 2647 -2.3% 1.02x (?)
RangeIterationSigned 16946 16879 -0.4% 1.00x (?)
RangeIterationSigned64 39521 39271 -0.6% 1.01x (?)
RangeIterationUnsigned 35184 35026 -0.4% 1.00x (?)
RangeReplaceableCollectionPlusDefault 8279 8261 -0.2% 1.00x (?)
RecursiveOwnedParameter 7899 7911 +0.2% 1.00x (?)
ReversedArray 14383 14284 -0.7% 1.01x
ReversedDictionary 22808 22906 +0.4% 1.00x
RomanNumbers 1176346 1187930 +1.0% 0.99x (?)
SetExclusiveOr 17195 17214 +0.1% 1.00x (?)
SetExclusiveOr_OfObjects 42234 42029 -0.5% 1.00x
SetIntersect 8173 8195 +0.3% 1.00x
SetIntersect_OfObjects 12168 12103 -0.5% 1.01x
SetIsSubsetOf 1346 1351 +0.4% 1.00x
SetIsSubsetOf_OfObjects 1565 1561 -0.3% 1.00x
SetUnion 11851 11857 +0.1% 1.00x (?)
SetUnion_OfObjects 29319 29387 +0.2% 1.00x (?)
SevenBoom 1675 1672 -0.2% 1.00x (?)
Sim2DArray 43652 43590 -0.1% 1.00x
SortLargeExistentials 15665 15644 -0.1% 1.00x (?)
SortLettersInPlace 2793 2788 -0.2% 1.00x (?)
SortSortedStrings 1315 1307 -0.6% 1.01x
SortStrings 2442 2420 -0.9% 1.01x
SortStringsUnicode 16240 16250 +0.1% 1.00x (?)
StackPromo 90635 90609 -0.0% 1.00x (?)
StaticArray 2633 2651 +0.7% 0.99x (?)
StrComplexWalk 6440 6441 +0.0% 1.00x (?)
StrToInt 57531 57697 +0.3% 1.00x (?)
StringAdder 4680 4687 +0.1% 1.00x (?)
StringBuilder 6819 6761 -0.9% 1.01x (?)
StringBuilderLong 2705 2705 +0.0% 1.00x
StringComparison_abnormal 1414 1413 -0.1% 1.00x (?)
StringComparison_ascii 9538 9583 +0.5% 1.00x
StringComparison_emoji 3782 3779 -0.1% 1.00x (?)
StringComparison_fastPrenormal 13205 13188 -0.1% 1.00x (?)
StringComparison_latin1 9422 9453 +0.3% 1.00x (?)
StringComparison_longSharedPrefix 13034 13053 +0.1% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 6872 6875 +0.0% 1.00x (?)
StringComparison_slowerPrenormal 6753 6772 +0.3% 1.00x (?)
StringComparison_zalgo 2832 2832 +0.0% 1.00x
StringEdits 334887 338257 +1.0% 0.99x (?)
StringEnumRawValueInitialization 19074 18915 -0.8% 1.01x (?)
StringEqualPointerComparison 3122 3124 +0.1% 1.00x (?)
StringFromLongWholeSubstring 23 23 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 197 197 +0.0% 1.00x
StringHasPrefixAscii 2956 2935 -0.7% 1.01x
StringHasPrefixUnicode 29621 29141 -1.6% 1.02x
StringHasSuffixAscii 3091 3117 +0.8% 0.99x
StringHasSuffixUnicode 86618 86920 +0.3% 1.00x (?)
StringMatch 32791 32858 +0.2% 1.00x
StringRemoveDupes 1409 1412 +0.2% 1.00x (?)
StringUTF16Builder 7700 7562 -1.8% 1.02x (?)
StringWalk 12760 12761 +0.0% 1.00x (?)
StringWithCString 39577 39636 +0.1% 1.00x (?)
StringWordBuilder 2706 2715 +0.3% 1.00x (?)
StringWordBuilderReservingCapacity 2545 2543 -0.1% 1.00x
SubstringComparable 4154 4161 +0.2% 1.00x (?)
SubstringEqualString 3445 3465 +0.6% 0.99x (?)
SubstringEquatable 7800 7805 +0.1% 1.00x (?)
SubstringFromLongString 24 24 +0.0% 1.00x
SubstringFromLongStringGeneric 103 102 -1.0% 1.01x
SuffixAnyCollection 4530 4548 +0.4% 1.00x (?)
SuffixAnySeqCRangeIter 33744 33746 +0.0% 1.00x (?)
SuffixAnySeqCRangeIterLazy 33373 33349 -0.1% 1.00x (?)
SuffixAnySeqCntRange 4537 4525 -0.3% 1.00x (?)
SuffixAnySeqCntRangeLazy 4561 4510 -1.1% 1.01x
SuffixAnySequence 25096 25129 +0.1% 1.00x (?)
SuffixAnySequenceLazy 25083 25128 +0.2% 1.00x
SuffixCountableRange 112 112 +0.0% 1.00x
SuffixCountableRangeLazy 8862 8895 +0.4% 1.00x (?)
SuffixSequence 24957 25262 +1.2% 0.99x
SuffixSequenceLazy 24896 24985 +0.4% 1.00x
SumUsingReduce 175096 170877 -2.4% 1.02x
SumUsingReduceInto 167140 167517 +0.2% 1.00x
SuperChars 212236 222745 +5.0% 0.95x (?)
TwoSum 3936 3913 -0.6% 1.01x (?)
TypeFlood 156 160 +2.6% 0.98x (?)
UTF8Decode 30548 30625 +0.3% 1.00x
Walsh 12026 11994 -0.3% 1.00x
WordCountHistogramASCII 47751 47785 +0.1% 1.00x (?)
WordCountHistogramUTF16 102502 105085 +2.5% 0.98x (?)
WordCountUniqueASCII 7974 7966 -0.1% 1.00x (?)
WordSplitASCII 24819 24828 +0.0% 1.00x (?)
WordSplitUTF16 26402 25974 -1.6% 1.02x (?)
XorLoop 23540 23597 +0.2% 1.00x (?)
Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

@airspeedswift
Copy link
Member Author

@swift-ci please smoke test

@airspeedswift airspeedswift changed the title [Benchmarks][DO NOT MERGE] Update benchmarks to Swift 4 [Benchmarks] Update benchmarks to Swift 4 Feb 14, 2018
Copy link
Contributor

@eeckstein eeckstein left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

data.withUnsafeMutableBytes { (ptr: UnsafeMutablePointer<UInt8>) -> () in
for i in 0..<data.count {
for i in 0..<n {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Doing optimizer's job ;-)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nah, suppressing an exclusive access warning

@@ -144,7 +144,7 @@ let charToString = { (c: Character) -> String in String(c) }
let charToInt = stringToInt • charToString

func sum<S: Sequence>(_ nums: S)->S.Iterator.Element where S.Iterator.Element: FixedWidthInteger {
return nums.reduce(0) { $0.0 + $0.1 }
return nums.reduce(0, +)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That'll start failing eventually.. I think. When the SE-110 is reconsidered again.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I dislike that change so this is a pro not a con AFAIAC :), but the reason I changed it is cos it's now $0 and $1 so I think it's SE-110-compatible.

@@ -50,7 +42,7 @@ func match(regexp: String, text: String) -> Bool {
}

/* matchhere: search for regexp at beginning of text */
func matchHere(_ regexp: String, _ text: String) -> Bool {
func matchHere(_ regexp: Substring, _ text: Substring) -> Bool {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Funny.. One would think that this would speed things up a little.

StringMatch | 7203 | 8176 | +13.5% | 0.88x

@moiseev
Copy link
Contributor

moiseev commented Feb 14, 2018

I don't think we need to rush it out, so let's give a full benchmark suite a try to validate that regressions we see in smoke run are not that bad, or otherwise.

@swift-ci Please benchmark

@airspeedswift
Copy link
Member Author

@swift-ci please benchmark

@swift-ci
Copy link
Contributor

Build comment file:

Optimized (O)

Regression (12)
TEST OLD NEW DELTA SPEEDUP
StaticArray 4 5 +25.0% 0.80x
PrefixWhileArray 79 94 +19.0% 0.84x
StringMatch 6417 7498 +16.8% 0.86x
RangeIterationSigned 154 179 +16.2% 0.86x
StringEqualPointerComparison 256 282 +10.2% 0.91x
DictionaryRemove 2443 2677 +9.6% 0.91x
PointerArithmetics 28256 30826 +9.1% 0.92x
StringWalk 1305 1416 +8.5% 0.92x
MapReduce 357 383 +7.3% 0.93x
MapReduceAnyCollection 358 383 +7.0% 0.93x
Hanoi 2971 3152 +6.1% 0.94x
MapReduceString 72 76 +5.6% 0.95x
Improvement (16)
TEST OLD NEW DELTA SPEEDUP
Sim2DArray 537 368 -31.5% 1.46x
PrefixWhileCountableRange 48 41 -14.6% 1.17x
MapReduceLazyCollectionShort 34 30 -11.8% 1.13x
LazilyFilteredRange 3751 3418 -8.9% 1.10x
NopDeinit 21169 19354 -8.6% 1.09x
CharIteration_utf16_unicodeScalars_Backwards 15481 14172 -8.5% 1.09x
ObjectiveCBridgeFromNSArrayAnyObject 18763 17471 -6.9% 1.07x (?)
CharIteration_tweet_unicodeScalars_Backwards 23935 22460 -6.2% 1.07x
CharIteration_ascii_unicodeScalars_Backwards 12123 11389 -6.1% 1.06x
CharIteration_russian_unicodeScalars_Backwards 10102 9491 -6.0% 1.06x
CharIteration_chinese_unicodeScalars_Backwards 9187 8633 -6.0% 1.06x
CharIteration_japanese_unicodeScalars_Backwards 14505 13631 -6.0% 1.06x
CharIteration_korean_unicodeScalars_Backwards 11751 11044 -6.0% 1.06x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2212 2090 -5.5% 1.06x
CharIteration_punctuated_unicodeScalars_Backwards 2763 2617 -5.3% 1.06x
NibbleSort 3744 3552 -5.1% 1.05x
No Changes (334)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3250 3227 -0.7% 1.01x (?)
AnyHashableWithAClass 62451 62223 -0.4% 1.00x (?)
Array2D 2277 2274 -0.1% 1.00x (?)
ArrayAppend 893 892 -0.1% 1.00x (?)
ArrayAppendArrayOfInt 672 671 -0.1% 1.00x (?)
ArrayAppendAscii 11857 11709 -1.2% 1.01x (?)
ArrayAppendFromGeneric 673 671 -0.3% 1.00x (?)
ArrayAppendGenericStructs 1210 1209 -0.1% 1.00x (?)
ArrayAppendLatin1 34191 34420 +0.7% 0.99x
ArrayAppendLazyMap 1175 1176 +0.1% 1.00x (?)
ArrayAppendOptionals 1211 1213 +0.2% 1.00x (?)
ArrayAppendRepeatCol 1175 1174 -0.1% 1.00x (?)
ArrayAppendReserved 668 668 +0.0% 1.00x
ArrayAppendSequence 990 990 +0.0% 1.00x
ArrayAppendStrings 13647 13636 -0.1% 1.00x (?)
ArrayAppendToFromGeneric 674 673 -0.1% 1.00x (?)
ArrayAppendToGeneric 673 672 -0.1% 1.00x (?)
ArrayAppendUTF16 33426 33576 +0.4% 1.00x (?)
ArrayInClass 77 77 +0.0% 1.00x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 129 129 +0.0% 1.00x
ArrayOfGenericRef 3947 3938 -0.2% 1.00x (?)
ArrayOfPOD 155 155 +0.0% 1.00x
ArrayOfRef 3908 3912 +0.1% 1.00x (?)
ArrayPlusEqualArrayOfInt 672 672 +0.0% 1.00x
ArrayPlusEqualFiveElementCollection 4796 4789 -0.1% 1.00x (?)
ArrayPlusEqualSingleElementCollection 893 894 +0.1% 1.00x (?)
ArrayPlusEqualThreeElements 1478 1480 +0.1% 1.00x (?)
ArraySubscript 1360 1371 +0.8% 0.99x (?)
ArrayValueProp 7 7 +0.0% 1.00x
ArrayValueProp2 7 7 +0.0% 1.00x
ArrayValueProp3 7 7 +0.0% 1.00x
ArrayValueProp4 7 7 +0.0% 1.00x
BinaryFloatingPointConversionFromBinaryInteger 34 33 -2.9% 1.03x
BitCount 189 188 -0.5% 1.01x (?)
ByteSwap 87 87 +0.0% 1.00x
COWTree 3251 3240 -0.3% 1.00x (?)
CSVParsing 680025 679400 -0.1% 1.00x (?)
CSVParsingAlt 645310 645897 +0.1% 1.00x (?)
CSVParsingAltIndices 323813 324647 +0.3% 1.00x (?)
CStringLongAscii 4282 4428 +3.4% 0.97x
CStringLongNonAscii 1937 1971 +1.8% 0.98x (?)
CStringShortAscii 4233 4252 +0.4% 1.00x (?)
Calculator 423 438 +3.5% 0.97x
CaptureProp 3503 3470 -0.9% 1.01x (?)
CharIndexing_ascii_unicodeScalars 13816 13222 -4.3% 1.04x
CharIndexing_ascii_unicodeScalars_Backwards 12858 12664 -1.5% 1.02x
CharIndexing_chinese_unicodeScalars 10466 10015 -4.3% 1.05x
CharIndexing_chinese_unicodeScalars_Backwards 9743 9593 -1.5% 1.02x
CharIndexing_japanese_unicodeScalars 16544 15831 -4.3% 1.05x
CharIndexing_japanese_unicodeScalars_Backwards 15394 15155 -1.6% 1.02x
CharIndexing_korean_unicodeScalars 13399 12825 -4.3% 1.04x
CharIndexing_korean_unicodeScalars_Backwards 12477 12277 -1.6% 1.02x
CharIndexing_punctuatedJapanese_unicodeScalars 2495 2401 -3.8% 1.04x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2339 2311 -1.2% 1.01x
CharIndexing_punctuated_unicodeScalars 3122 3007 -3.7% 1.04x
CharIndexing_punctuated_unicodeScalars_Backwards 2928 2885 -1.5% 1.01x
CharIndexing_russian_unicodeScalars 11513 11023 -4.3% 1.04x
CharIndexing_russian_unicodeScalars_Backwards 10722 10557 -1.5% 1.02x
CharIndexing_tweet_unicodeScalars 27169 26080 -4.0% 1.04x
CharIndexing_tweet_unicodeScalars_Backwards 25318 25575 +1.0% 0.99x
CharIndexing_utf16_unicodeScalars 18332 18332 +0.0% 1.00x
CharIndexing_utf16_unicodeScalars_Backwards 18749 18772 +0.1% 1.00x (?)
CharIteration_ascii_unicodeScalars 18454 18722 +1.5% 0.99x
CharIteration_chinese_unicodeScalars 13993 14173 +1.3% 0.99x
CharIteration_japanese_unicodeScalars 22138 22428 +1.3% 0.99x (?)
CharIteration_korean_unicodeScalars 17885 18148 +1.5% 0.99x
CharIteration_punctuatedJapanese_unicodeScalars 3303 3351 +1.5% 0.99x
CharIteration_punctuated_unicodeScalars 4142 4200 +1.4% 0.99x
CharIteration_russian_unicodeScalars 15340 15589 +1.6% 0.98x
CharIteration_tweet_unicodeScalars 36418 36990 +1.6% 0.98x
CharIteration_utf16_unicodeScalars 24500 24660 +0.7% 0.99x (?)
CharacterLiteralsLarge 5339 5363 +0.4% 1.00x (?)
CharacterLiteralsSmall 367 367 +0.0% 1.00x
CharacterPropertiesFetch 4152 4162 +0.2% 1.00x (?)
CharacterPropertiesPrecomputed 956 954 -0.2% 1.00x (?)
CharacterPropertiesStashed 1492 1473 -1.3% 1.01x (?)
CharacterPropertiesStashedMemo 1459 1459 +0.0% 1.00x
Chars 869 869 +0.0% 1.00x
ClassArrayGetter 13 13 +0.0% 1.00x
Combos 410 410 +0.0% 1.00x
DictOfArraysToArrayOfDicts 705 704 -0.1% 1.00x (?)
Dictionary 457 451 -1.3% 1.01x (?)
Dictionary2 1428 1432 +0.3% 1.00x (?)
Dictionary2OfObjects 2626 2638 +0.5% 1.00x (?)
Dictionary3 209 211 +1.0% 0.99x (?)
Dictionary3OfObjects 602 601 -0.2% 1.00x (?)
Dictionary4 132 131 -0.8% 1.01x (?)
Dictionary4OfObjects 180 179 -0.6% 1.01x
DictionaryBridge 1768 1768 +0.0% 1.00x
DictionaryGroup 119 119 +0.0% 1.00x
DictionaryGroupOfObjects 1723 1725 +0.1% 1.00x (?)
DictionaryLiteral 1436 1440 +0.3% 1.00x (?)
DictionaryOfObjects 1955 1949 -0.3% 1.00x (?)
DictionaryRemoveOfObjects 21313 21453 +0.7% 0.99x (?)
DictionarySubscriptDefaultMutation 127 128 +0.8% 0.99x (?)
DictionarySubscriptDefaultMutationArray 437 439 +0.5% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 3433 3437 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 1244 1242 -0.2% 1.00x (?)
DictionarySwap 421 421 +0.0% 1.00x
DictionarySwapOfObjects 6647 6650 +0.0% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 68 68 +0.0% 1.00x
DropFirstAnyCollectionLazy 58082 58485 +0.7% 0.99x (?)
DropFirstAnySeqCRangeIter 146 146 +0.0% 1.00x
DropFirstAnySeqCRangeIterLazy 146 146 +0.0% 1.00x
DropFirstAnySeqCntRange 64 64 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 64 64 +0.0% 1.00x
DropFirstAnySequence 1652 1652 +0.0% 1.00x
DropFirstAnySequenceLazy 1652 1652 +0.0% 1.00x
DropFirstArray 31 31 +0.0% 1.00x
DropFirstArrayLazy 31 31 +0.0% 1.00x
DropFirstCountableRange 31 31 +0.0% 1.00x
DropFirstCountableRangeLazy 31 31 +0.0% 1.00x
DropFirstSequence 2420 2433 +0.5% 0.99x (?)
DropFirstSequenceLazy 2510 2510 +0.0% 1.00x
DropLastAnyCollection 25 25 +0.0% 1.00x
DropLastAnyCollectionLazy 19400 19426 +0.1% 1.00x (?)
DropLastAnySeqCRangeIter 3139 3152 +0.4% 1.00x (?)
DropLastAnySeqCRangeIterLazy 3142 3156 +0.4% 1.00x (?)
DropLastAnySeqCntRange 21 21 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 21 21 +0.0% 1.00x
DropLastAnySequence 4592 4590 -0.0% 1.00x (?)
DropLastAnySequenceLazy 4692 4696 +0.1% 1.00x (?)
DropLastCountableRange 10 10 +0.0% 1.00x
DropLastCountableRangeLazy 10 10 +0.0% 1.00x
DropLastSequence 616 637 +3.4% 0.97x
DropLastSequenceLazy 616 638 +3.6% 0.97x
DropWhileAnyCollection 89 89 +0.0% 1.00x
DropWhileAnyCollectionLazy 137 137 +0.0% 1.00x
DropWhileAnySeqCRangeIter 141 141 +0.0% 1.00x
DropWhileAnySeqCRangeIterLazy 137 137 +0.0% 1.00x
DropWhileAnySeqCntRange 85 85 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 137 137 +0.0% 1.00x
DropWhileAnySequence 1668 1669 +0.1% 1.00x (?)
DropWhileAnySequenceLazy 1664 1664 +0.0% 1.00x
DropWhileArrayLazy 116 115 -0.9% 1.01x
DropWhileCountableRange 32 32 +0.0% 1.00x
DropWhileCountableRangeLazy 100 100 +0.0% 1.00x
DropWhileSequence 1202 1202 +0.0% 1.00x
DropWhileSequenceLazy 79 79 +0.0% 1.00x
EqualStringSubstring 386 386 +0.0% 1.00x
EqualSubstringString 386 386 +0.0% 1.00x
EqualSubstringSubstring 386 386 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 384 385 +0.3% 1.00x (?)
ErrorHandling 2045 2067 +1.1% 0.99x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FilterEvenUsingReduce 1188 1174 -1.2% 1.01x (?)
FilterEvenUsingReduceInto 133 132 -0.8% 1.01x (?)
FrequenciesUsingReduce 6008 5961 -0.8% 1.01x (?)
FrequenciesUsingReduceInto 2800 2792 -0.3% 1.00x (?)
HashTest 1567 1565 -0.1% 1.00x (?)
Histogram 289 289 +0.0% 1.00x
Integrate 195 195 +0.0% 1.00x
IterateData 1180 1209 +2.5% 0.98x
Join 339 332 -2.1% 1.02x (?)
LazilyFilteredArrayContains 32530 32901 +1.1% 0.99x
LazilyFilteredArrays 59155 59223 +0.1% 1.00x (?)
LessSubstringSubstring 387 387 +0.0% 1.00x
LessSubstringSubstringGenericComparable 385 385 +0.0% 1.00x
LinkedList 6800 6840 +0.6% 0.99x (?)
LuhnAlgoEager 524 523 -0.2% 1.00x (?)
LuhnAlgoLazy 525 523 -0.4% 1.00x (?)
MapReduceAnyCollectionShort 1841 1871 +1.6% 0.98x (?)
MapReduceClass 2738 2727 -0.4% 1.00x (?)
MapReduceClassShort 4232 4223 -0.2% 1.00x (?)
MapReduceLazyCollection 12 12 +0.0% 1.00x
MapReduceLazySequence 77 77 +0.0% 1.00x
MapReduceSequence 417 409 -1.9% 1.02x (?)
MapReduceShort 1813 1832 +1.0% 0.99x (?)
MapReduceShortString 19 19 +0.0% 1.00x
Memset 192 192 +0.0% 1.00x
MonteCarloE 9447 9357 -1.0% 1.01x
MonteCarloPi 38395 38467 +0.2% 1.00x (?)
NSDictionaryCastToSwift 4748 4736 -0.3% 1.00x (?)
NSError 271 268 -1.1% 1.01x (?)
NSStringConversion 270 272 +0.7% 0.99x
ObjectAllocation 164 164 +0.0% 1.00x
ObjectiveCBridgeFromNSArrayAnyObjectForced 3605 3524 -2.2% 1.02x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 33752 34061 +0.9% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 30001 29603 -1.3% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 104264 103976 -0.3% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObject 53790 52974 -1.5% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 3747 3717 -0.8% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 61236 60855 -0.6% 1.01x (?)
ObjectiveCBridgeFromNSString 1152 1168 +1.4% 0.99x (?)
ObjectiveCBridgeFromNSStringForced 2127 2105 -1.0% 1.01x (?)
ObjectiveCBridgeStubDataAppend 3554 3561 +0.2% 1.00x (?)
ObjectiveCBridgeStubDateMutation 231 231 +0.0% 1.00x
ObjectiveCBridgeStubFromArrayOfNSString 23173 23507 +1.4% 0.99x (?)
ObjectiveCBridgeStubFromNSDate 3707 3616 -2.5% 1.03x (?)
ObjectiveCBridgeStubFromNSString 760 761 +0.1% 1.00x (?)
ObjectiveCBridgeStubFromNSStringRef 142 139 -2.1% 1.02x
ObjectiveCBridgeStubNSDataAppend 2204 2220 +0.7% 0.99x (?)
ObjectiveCBridgeStubNSDateMutationRef 12164 12118 -0.4% 1.00x (?)
ObjectiveCBridgeStubToArrayOfNSString 25919 25827 -0.4% 1.00x (?)
ObjectiveCBridgeStubToNSDate 13575 13584 +0.1% 1.00x (?)
ObjectiveCBridgeStubToNSDateRef 3046 3030 -0.5% 1.01x (?)
ObjectiveCBridgeStubToNSString 1364 1350 -1.0% 1.01x (?)
ObjectiveCBridgeStubToNSStringRef 101 103 +2.0% 0.98x (?)
ObjectiveCBridgeStubURLAppendPath 289821 287722 -0.7% 1.01x (?)
ObjectiveCBridgeStubURLAppendPathRef 288245 289184 +0.3% 1.00x (?)
ObjectiveCBridgeToNSArray 25870 25757 -0.4% 1.00x (?)
ObjectiveCBridgeToNSDictionary 46819 46546 -0.6% 1.01x (?)
ObjectiveCBridgeToNSSet 39899 39809 -0.2% 1.00x (?)
ObjectiveCBridgeToNSString 1159 1159 +0.0% 1.00x
ObserverClosure 1915 1925 +0.5% 0.99x (?)
ObserverForwarderStruct 846 846 +0.0% 1.00x
ObserverPartiallyAppliedMethod 3332 3327 -0.2% 1.00x (?)
ObserverUnappliedMethod 2108 2089 -0.9% 1.01x (?)
OpenClose 138 141 +2.2% 0.98x
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 3620 3644 +0.7% 0.99x
PolymorphicCalls 22 22 +0.0% 1.00x
PopFrontArray 1735 1741 +0.3% 1.00x (?)
PopFrontArrayGeneric 1758 1758 +0.0% 1.00x
PopFrontUnsafePointer 8425 8400 -0.3% 1.00x (?)
PrefixAnyCollection 68 68 +0.0% 1.00x
PrefixAnyCollectionLazy 58116 58289 +0.3% 1.00x (?)
PrefixAnySeqCRangeIter 114 114 +0.0% 1.00x
PrefixAnySeqCRangeIterLazy 114 114 +0.0% 1.00x
PrefixAnySeqCntRange 64 64 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 64 64 +0.0% 1.00x
PrefixAnySequence 1236 1236 +0.0% 1.00x
PrefixAnySequenceLazy 1236 1236 +0.0% 1.00x
PrefixArray 31 31 +0.0% 1.00x
PrefixArrayLazy 31 31 +0.0% 1.00x
PrefixCountableRange 31 31 +0.0% 1.00x
PrefixCountableRangeLazy 31 31 +0.0% 1.00x
PrefixSequence 1192 1193 +0.1% 1.00x (?)
PrefixSequenceLazy 1312 1269 -3.3% 1.03x (?)
PrefixWhileAnyCollection 131 131 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 95 95 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 374 389 +4.0% 0.96x
PrefixWhileAnySeqCRangeIterLazy 95 95 +0.0% 1.00x
PrefixWhileAnySeqCntRange 127 127 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 95 95 +0.0% 1.00x
PrefixWhileAnySequence 1382 1382 +0.0% 1.00x
PrefixWhileAnySequenceLazy 1248 1248 +0.0% 1.00x
PrefixWhileArrayLazy 63 63 +0.0% 1.00x
PrefixWhileCountableRangeLazy 31 31 +0.0% 1.00x
PrefixWhileSequence 319 335 +5.0% 0.95x
PrefixWhileSequenceLazy 47 47 +0.0% 1.00x
Prims 670 673 +0.4% 1.00x (?)
PrimsSplit 673 674 +0.1% 1.00x (?)
QueueConcrete 1171 1170 -0.1% 1.00x (?)
QueueGeneric 1034 1034 +0.0% 1.00x
RC4 153 153 +0.0% 1.00x
RGBHistogram 1990 2003 +0.7% 0.99x (?)
RGBHistogramOfObjects 21070 21080 +0.0% 1.00x (?)
RangeAssignment 318 328 +3.1% 0.97x
RangeIterationSigned64 179 179 +0.0% 1.00x
RangeIterationUnsigned 179 179 +0.0% 1.00x
RangeReplaceableCollectionPlusDefault 883 888 +0.6% 0.99x (?)
RecursiveOwnedParameter 2130 2084 -2.2% 1.02x
ReversedArray 51 51 +0.0% 1.00x
ReversedBidirectional 13833 13804 -0.2% 1.00x (?)
ReversedDictionary 98 97 -1.0% 1.01x (?)
RomanNumbers 104215 104567 +0.3% 1.00x (?)
SetExclusiveOr 3076 3125 +1.6% 0.98x (?)
SetExclusiveOr_OfObjects 7756 7935 +2.3% 0.98x (?)
SetIntersect 296 293 -1.0% 1.01x (?)
SetIntersect_OfObjects 1587 1584 -0.2% 1.00x (?)
SetIsSubsetOf 268 269 +0.4% 1.00x
SetIsSubsetOf_OfObjects 328 328 +0.0% 1.00x
SetUnion 2818 2842 +0.9% 0.99x (?)
SetUnion_OfObjects 6495 6531 +0.6% 0.99x (?)
SevenBoom 1352 1370 +1.3% 0.99x (?)
SortLargeExistentials 6145 6065 -1.3% 1.01x (?)
SortLettersInPlace 1013 1008 -0.5% 1.00x (?)
SortSortedStrings 865 876 +1.3% 0.99x
SortStrings 1562 1574 +0.8% 0.99x
SortStringsUnicode 13706 13629 -0.6% 1.01x (?)
StackPromo 20224 19787 -2.2% 1.02x (?)
StrComplexWalk 1398 1401 +0.2% 1.00x (?)
StrToInt 1884 1934 +2.7% 0.97x
StringAdder 3739 3736 -0.1% 1.00x (?)
StringBuilder 1232 1228 -0.3% 1.00x (?)
StringBuilderLong 941 944 +0.3% 1.00x (?)
StringComparison_abnormal 782 781 -0.1% 1.00x (?)
StringComparison_ascii 847 875 +3.3% 0.97x
StringComparison_emoji 2309 2309 +0.0% 1.00x
StringComparison_fastPrenormal 7919 7911 -0.1% 1.00x (?)
StringComparison_latin1 5444 5434 -0.2% 1.00x (?)
StringComparison_longSharedPrefix 10347 10344 -0.0% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 4176 4171 -0.1% 1.00x (?)
StringComparison_slowerPrenormal 3803 3794 -0.2% 1.00x (?)
StringComparison_zalgo 1565 1568 +0.2% 1.00x (?)
StringEdits 106047 106738 +0.7% 0.99x (?)
StringEnumRawValueInitialization 861 860 -0.1% 1.00x (?)
StringFromLongWholeSubstring 18 18 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 9 9 +0.0% 1.00x
StringHasPrefixAscii 1155 1181 +2.3% 0.98x
StringHasPrefixUnicode 24716 24644 -0.3% 1.00x (?)
StringHasSuffixAscii 1284 1284 +0.0% 1.00x
StringHasSuffixUnicode 75841 75722 -0.2% 1.00x (?)
StringInterpolation 9539 9594 +0.6% 0.99x (?)
StringRemoveDupes 1082 1079 -0.3% 1.00x (?)
StringUTF16Builder 2100 2106 +0.3% 1.00x (?)
StringWithCString 38109 40007 +5.0% 0.95x
StringWordBuilder 1539 1527 -0.8% 1.01x (?)
StringWordBuilderReservingCapacity 1182 1175 -0.6% 1.01x (?)
SubstringComparable 1820 1822 +0.1% 1.00x (?)
SubstringEqualString 1923 1924 +0.1% 1.00x (?)
SubstringEquatable 2806 2807 +0.0% 1.00x (?)
SubstringFromLongString 9 9 +0.0% 1.00x
SubstringFromLongStringGeneric 62 62 +0.0% 1.00x
SuffixAnyCollection 25 25 +0.0% 1.00x
SuffixAnyCollectionLazy 19411 19412 +0.0% 1.00x (?)
SuffixAnySeqCRangeIter 3418 3409 -0.3% 1.00x (?)
SuffixAnySeqCRangeIterLazy 3402 3411 +0.3% 1.00x (?)
SuffixAnySeqCntRange 21 21 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 21 21 +0.0% 1.00x
SuffixAnySequence 4584 4559 -0.5% 1.01x (?)
SuffixAnySequenceLazy 4716 4634 -1.7% 1.02x
SuffixCountableRange 10 10 +0.0% 1.00x
SuffixCountableRangeLazy 10 10 +0.0% 1.00x
SuffixSequence 3382 3354 -0.8% 1.01x
SuffixSequenceLazy 3374 3351 -0.7% 1.01x (?)
SumUsingReduce 86 87 +1.2% 0.99x
SumUsingReduceInto 86 87 +1.2% 0.99x
SuperChars 37483 37066 -1.1% 1.01x (?)
TwoSum 904 904 +0.0% 1.00x
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 293 283 -3.4% 1.04x
Walsh 376 386 +2.7% 0.97x
WordCountHistogramASCII 6262 6400 +2.2% 0.98x
WordCountHistogramUTF16 47585 45801 -3.7% 1.04x (?)
WordCountUniqueASCII 1638 1629 -0.5% 1.01x (?)
WordCountUniqueUTF16 19599 20111 +2.6% 0.97x (?)
WordSplitASCII 19323 19269 -0.3% 1.00x (?)
WordSplitUTF16 20423 20326 -0.5% 1.00x (?)
XorLoop 335 335 +0.0% 1.00x

Unoptimized (Onone)

Regression (12)
TEST OLD NEW DELTA SPEEDUP
BitCount 1881 6820 +262.6% 0.28x
ByteSwap 3511 8242 +134.7% 0.43x
MonteCarloPi 3518192 4980359 +41.6% 0.71x
ArraySubscript 74515 102994 +38.2% 0.72x
MonteCarloE 803702 1100248 +36.9% 0.73x
NibbleSort 269190 367797 +36.6% 0.73x
HashTest 14784 19346 +30.9% 0.76x
CharIndexing_punctuated_unicodeScalars 70240 79227 +12.8% 0.89x (?)
SetExclusiveOr_OfObjects 37641 40636 +8.0% 0.93x
CharIndexing_russian_unicodeScalars 263961 284708 +7.9% 0.93x (?)
CharIndexing_ascii_unicodeScalars 319196 343725 +7.7% 0.93x (?)
ArrayAppendLazyMap 151245 159664 +5.6% 0.95x
Improvement (8)
TEST OLD NEW DELTA SPEEDUP
ObjectiveCBridgeStubDateMutation 595 540 -9.2% 1.10x
ObjectiveCBridgeFromNSArrayAnyObject 22259 20404 -8.3% 1.09x (?)
StringEdits 308946 286171 -7.4% 1.08x (?)
SuffixAnyCollectionLazy 31645 29462 -6.9% 1.07x (?)
LuhnAlgoLazy 4723 4403 -6.8% 1.07x (?)
CSVParsingAltIndices 2306360 2161144 -6.3% 1.07x
ObjectiveCBridgeFromNSSetAnyObjectToString 69631 65614 -5.8% 1.06x (?)
COWTree 10325 9807 -5.0% 1.05x (?)
No Changes (342)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 4566 4565 -0.0% 1.00x (?)
AnyHashableWithAClass 77571 77402 -0.2% 1.00x (?)
Array2D 565190 565328 +0.0% 1.00x (?)
ArrayAppend 4078 4075 -0.1% 1.00x (?)
ArrayAppendArrayOfInt 730 729 -0.1% 1.00x (?)
ArrayAppendAscii 35650 35663 +0.0% 1.00x (?)
ArrayAppendFromGeneric 729 730 +0.1% 1.00x (?)
ArrayAppendGenericStructs 1273 1272 -0.1% 1.00x (?)
ArrayAppendLatin1 56703 56606 -0.2% 1.00x (?)
ArrayAppendOptionals 1273 1271 -0.2% 1.00x (?)
ArrayAppendRepeatCol 152884 153117 +0.2% 1.00x (?)
ArrayAppendReserved 3841 3841 +0.0% 1.00x
ArrayAppendSequence 132453 132540 +0.1% 1.00x (?)
ArrayAppendStrings 13792 13798 +0.0% 1.00x (?)
ArrayAppendToFromGeneric 729 728 -0.1% 1.00x (?)
ArrayAppendToGeneric 732 732 +0.0% 1.00x
ArrayAppendUTF16 56238 56083 -0.3% 1.00x (?)
ArrayInClass 5773 5761 -0.2% 1.00x
ArrayLiteral 1599 1597 -0.1% 1.00x (?)
ArrayOfGenericPOD2 959 959 +0.0% 1.00x
ArrayOfGenericRef 9053 9034 -0.2% 1.00x (?)
ArrayOfPOD 676 676 +0.0% 1.00x
ArrayOfRef 8672 8406 -3.1% 1.03x (?)
ArrayPlusEqualArrayOfInt 729 727 -0.3% 1.00x (?)
ArrayPlusEqualFiveElementCollection 210123 210504 +0.2% 1.00x (?)
ArrayPlusEqualSingleElementCollection 206658 207448 +0.4% 1.00x (?)
ArrayPlusEqualThreeElements 8255 8419 +2.0% 0.98x (?)
ArrayValueProp 3259 3276 +0.5% 0.99x (?)
ArrayValueProp2 14308 14326 +0.1% 1.00x (?)
ArrayValueProp3 3796 3802 +0.2% 1.00x (?)
ArrayValueProp4 3667 3647 -0.5% 1.01x (?)
BinaryFloatingPointConversionFromBinaryInteger 5443 5407 -0.7% 1.01x (?)
CSVParsing 2196162 2196526 +0.0% 1.00x (?)
CSVParsingAlt 1179788 1190628 +0.9% 0.99x (?)
CStringLongAscii 4265 4267 +0.0% 1.00x (?)
CStringLongNonAscii 2001 2002 +0.0% 1.00x (?)
CStringShortAscii 6833 6753 -1.2% 1.01x (?)
Calculator 1400 1372 -2.0% 1.02x (?)
CaptureProp 224321 224934 +0.3% 1.00x (?)
CharIndexing_ascii_unicodeScalars_Backwards 381001 390688 +2.5% 0.98x (?)
CharIndexing_chinese_unicodeScalars 241151 239923 -0.5% 1.01x (?)
CharIndexing_chinese_unicodeScalars_Backwards 290188 287844 -0.8% 1.01x (?)
CharIndexing_japanese_unicodeScalars 382249 391028 +2.3% 0.98x (?)
CharIndexing_japanese_unicodeScalars_Backwards 458930 466411 +1.6% 0.98x (?)
CharIndexing_korean_unicodeScalars 307397 309225 +0.6% 0.99x (?)
CharIndexing_korean_unicodeScalars_Backwards 376645 383267 +1.8% 0.98x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 58098 55622 -4.3% 1.04x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 65989 65386 -0.9% 1.01x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 84402 87630 +3.8% 0.96x (?)
CharIndexing_russian_unicodeScalars_Backwards 316253 316047 -0.1% 1.00x (?)
CharIndexing_tweet_unicodeScalars 652834 677477 +3.8% 0.96x (?)
CharIndexing_tweet_unicodeScalars_Backwards 758906 754970 -0.5% 1.01x (?)
CharIndexing_utf16_unicodeScalars 272936 273248 +0.1% 1.00x (?)
CharIndexing_utf16_unicodeScalars_Backwards 311666 324339 +4.1% 0.96x (?)
CharIteration_ascii_unicodeScalars 138309 138061 -0.2% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 300193 303250 +1.0% 0.99x (?)
CharIteration_chinese_unicodeScalars 104894 104449 -0.4% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 226528 226774 +0.1% 1.00x (?)
CharIteration_japanese_unicodeScalars 165525 165782 +0.2% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 356816 359290 +0.7% 0.99x (?)
CharIteration_korean_unicodeScalars 133868 133752 -0.1% 1.00x (?)
CharIteration_korean_unicodeScalars_Backwards 287900 286898 -0.3% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars 24822 24705 -0.5% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 53368 53501 +0.2% 1.00x (?)
CharIteration_punctuated_unicodeScalars 31006 31004 -0.0% 1.00x (?)
CharIteration_punctuated_unicodeScalars_Backwards 66089 65451 -1.0% 1.01x (?)
CharIteration_russian_unicodeScalars 115339 114759 -0.5% 1.01x (?)
CharIteration_russian_unicodeScalars_Backwards 247507 260032 +5.1% 0.95x (?)
CharIteration_tweet_unicodeScalars 272921 272109 -0.3% 1.00x
CharIteration_tweet_unicodeScalars_Backwards 587551 586870 -0.1% 1.00x (?)
CharIteration_utf16_unicodeScalars 116741 116868 +0.1% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 247766 245415 -0.9% 1.01x (?)
CharacterLiteralsLarge 5295 5268 -0.5% 1.01x (?)
CharacterLiteralsSmall 572 572 +0.0% 1.00x
CharacterPropertiesFetch 4862 4911 +1.0% 0.99x (?)
CharacterPropertiesPrecomputed 3807 3826 +0.5% 1.00x (?)
CharacterPropertiesStashed 2067 2090 +1.1% 0.99x (?)
CharacterPropertiesStashedMemo 4486 4484 -0.0% 1.00x (?)
Chars 35065 35149 +0.2% 1.00x
ClassArrayGetter 881 881 +0.0% 1.00x
Combos 1830 1812 -1.0% 1.01x (?)
DictOfArraysToArrayOfDicts 2951 3000 +1.7% 0.98x (?)
Dictionary 2302 2297 -0.2% 1.00x (?)
Dictionary2 2560 2552 -0.3% 1.00x (?)
Dictionary2OfObjects 4977 4938 -0.8% 1.01x (?)
Dictionary3 1134 1135 +0.1% 1.00x (?)
Dictionary3OfObjects 1993 1985 -0.4% 1.00x (?)
Dictionary4 1066 1069 +0.3% 1.00x (?)
Dictionary4OfObjects 1631 1640 +0.6% 0.99x (?)
DictionaryBridge 1901 1868 -1.7% 1.02x (?)
DictionaryGroup 3726 3712 -0.4% 1.00x (?)
DictionaryGroupOfObjects 6679 6689 +0.1% 1.00x (?)
DictionaryLiteral 7698 7678 -0.3% 1.00x (?)
DictionaryOfObjects 5485 5464 -0.4% 1.00x (?)
DictionaryRemove 16678 16750 +0.4% 1.00x (?)
DictionaryRemoveOfObjects 45508 44843 -1.5% 1.01x (?)
DictionarySubscriptDefaultMutation 1839 1846 +0.4% 1.00x (?)
DictionarySubscriptDefaultMutationArray 2067 2062 -0.2% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 8094 8054 -0.5% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 4987 5061 +1.5% 0.99x (?)
DictionarySwap 4757 4784 +0.6% 0.99x
DictionarySwapOfObjects 20145 20112 -0.2% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 12180 12187 +0.1% 1.00x (?)
DropFirstAnyCollectionLazy 90195 90977 +0.9% 0.99x (?)
DropFirstAnySeqCRangeIter 18187 18170 -0.1% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 18192 18224 +0.2% 1.00x (?)
DropFirstAnySeqCntRange 12108 12126 +0.1% 1.00x (?)
DropFirstAnySeqCntRangeLazy 12170 12146 -0.2% 1.00x
DropFirstAnySequence 9640 9698 +0.6% 0.99x (?)
DropFirstAnySequenceLazy 9642 9652 +0.1% 1.00x (?)
DropFirstArray 3397 3407 +0.3% 1.00x
DropFirstArrayLazy 22945 22501 -1.9% 1.02x (?)
DropFirstCountableRange 291 293 +0.7% 0.99x (?)
DropFirstCountableRangeLazy 23022 23022 +0.0% 1.00x
DropFirstSequence 9311 9340 +0.3% 1.00x (?)
DropFirstSequenceLazy 9299 9330 +0.3% 1.00x (?)
DropLastAnyCollection 4078 4067 -0.3% 1.00x (?)
DropLastAnyCollectionLazy 30108 29725 -1.3% 1.01x (?)
DropLastAnySeqCRangeIter 33720 33676 -0.1% 1.00x (?)
DropLastAnySeqCRangeIterLazy 33290 33324 +0.1% 1.00x (?)
DropLastAnySeqCntRange 4045 4056 +0.3% 1.00x (?)
DropLastAnySeqCntRangeLazy 4076 4070 -0.1% 1.00x
DropLastAnySequence 25784 25783 -0.0% 1.00x (?)
DropLastAnySequenceLazy 25674 25747 +0.3% 1.00x
DropLastCountableRange 101 101 +0.0% 1.00x
DropLastCountableRangeLazy 7671 7679 +0.1% 1.00x (?)
DropLastSequence 25728 25796 +0.3% 1.00x (?)
DropLastSequenceLazy 25720 25812 +0.4% 1.00x
DropWhileAnyCollection 15407 15467 +0.4% 1.00x (?)
DropWhileAnyCollectionLazy 17257 17274 +0.1% 1.00x (?)
DropWhileAnySeqCRangeIter 19603 19589 -0.1% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 17261 17319 +0.3% 1.00x
DropWhileAnySeqCntRange 15396 15420 +0.2% 1.00x (?)
DropWhileAnySeqCntRangeLazy 17398 17378 -0.1% 1.00x (?)
DropWhileAnySequence 10828 10927 +0.9% 0.99x
DropWhileAnySequenceLazy 8965 8997 +0.4% 1.00x
DropWhileArrayLazy 12238 12235 -0.0% 1.00x (?)
DropWhileCountableRange 3545 3540 -0.1% 1.00x
DropWhileCountableRangeLazy 16465 16486 +0.1% 1.00x
DropWhileSequence 10509 10476 -0.3% 1.00x (?)
DropWhileSequenceLazy 8681 8640 -0.5% 1.00x (?)
EqualStringSubstring 425 426 +0.2% 1.00x (?)
EqualSubstringString 426 426 +0.0% 1.00x
EqualSubstringSubstring 426 427 +0.2% 1.00x (?)
EqualSubstringSubstringGenericEquatable 434 434 +0.0% 1.00x
ErrorHandling 6148 6415 +4.3% 0.96x (?)
ExclusivityGlobal 164 159 -3.0% 1.03x
ExclusivityIndependent 60 60 +0.0% 1.00x
FilterEvenUsingReduce 3249 3245 -0.1% 1.00x (?)
FilterEvenUsingReduceInto 1717 1719 +0.1% 1.00x (?)
FrequenciesUsingReduce 9112 9199 +1.0% 0.99x (?)
FrequenciesUsingReduceInto 4684 4676 -0.2% 1.00x (?)
Hanoi 17514 17699 +1.1% 0.99x
Histogram 5825 5824 -0.0% 1.00x (?)
Integrate 729 738 +1.2% 0.99x (?)
IterateData 5361 5381 +0.4% 1.00x
Join 989 987 -0.2% 1.00x (?)
LazilyFilteredArrayContains 690352 691132 +0.1% 1.00x (?)
LazilyFilteredArrays 1311010 1305573 -0.4% 1.00x (?)
LazilyFilteredRange 415514 415237 -0.1% 1.00x (?)
LessSubstringSubstring 427 427 +0.0% 1.00x
LessSubstringSubstringGenericComparable 432 432 +0.0% 1.00x
LinkedList 28860 28741 -0.4% 1.00x (?)
LuhnAlgoEager 4518 4472 -1.0% 1.01x (?)
MapReduce 22902 22799 -0.4% 1.00x
MapReduceAnyCollection 22755 22830 +0.3% 1.00x (?)
MapReduceAnyCollectionShort 32862 32730 -0.4% 1.00x (?)
MapReduceClass 27080 27216 +0.5% 1.00x
MapReduceClassShort 36440 36750 +0.9% 0.99x (?)
MapReduceLazyCollection 19995 19938 -0.3% 1.00x (?)
MapReduceLazyCollectionShort 29567 29326 -0.8% 1.01x (?)
MapReduceLazySequence 15515 15620 +0.7% 0.99x (?)
MapReduceSequence 26052 26079 +0.1% 1.00x (?)
MapReduceShort 33030 32692 -1.0% 1.01x (?)
MapReduceShortString 205 209 +2.0% 0.98x (?)
MapReduceString 1612 1619 +0.4% 1.00x (?)
Memset 40143 40134 -0.0% 1.00x (?)
NSDictionaryCastToSwift 5947 5937 -0.2% 1.00x (?)
NSError 635 648 +2.0% 0.98x (?)
NSStringConversion 305 308 +1.0% 0.99x
NopDeinit 146918 147147 +0.2% 1.00x
ObjectAllocation 1210 1208 -0.2% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 7640 7864 +2.9% 0.97x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 37017 36748 -0.7% 1.01x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 32108 32245 +0.4% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 108312 112525 +3.9% 0.96x (?)
ObjectiveCBridgeFromNSSetAnyObject 57484 59308 +3.2% 0.97x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 6096 5959 -2.2% 1.02x (?)
ObjectiveCBridgeFromNSString 2812 2858 +1.6% 0.98x (?)
ObjectiveCBridgeFromNSStringForced 2403 2423 +0.8% 0.99x (?)
ObjectiveCBridgeStubDataAppend 4112 4057 -1.3% 1.01x (?)
ObjectiveCBridgeStubFromArrayOfNSString 23939 23392 -2.3% 1.02x (?)
ObjectiveCBridgeStubFromNSDate 4123 4326 +4.9% 0.95x (?)
ObjectiveCBridgeStubFromNSString 811 805 -0.7% 1.01x (?)
ObjectiveCBridgeStubFromNSStringRef 179 176 -1.7% 1.02x
ObjectiveCBridgeStubNSDataAppend 2679 2655 -0.9% 1.01x (?)
ObjectiveCBridgeStubNSDateMutationRef 14734 14700 -0.2% 1.00x (?)
ObjectiveCBridgeStubToArrayOfNSString 25776 25554 -0.9% 1.01x (?)
ObjectiveCBridgeStubToNSDate 14819 14267 -3.7% 1.04x (?)
ObjectiveCBridgeStubToNSDateRef 3081 3102 +0.7% 0.99x (?)
ObjectiveCBridgeStubToNSString 1422 1426 +0.3% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 142 137 -3.5% 1.04x (?)
ObjectiveCBridgeStubURLAppendPath 297840 307778 +3.3% 0.97x (?)
ObjectiveCBridgeStubURLAppendPathRef 295623 301824 +2.1% 0.98x (?)
ObjectiveCBridgeToNSArray 26330 26271 -0.2% 1.00x (?)
ObjectiveCBridgeToNSDictionary 48004 49461 +3.0% 0.97x (?)
ObjectiveCBridgeToNSSet 42282 41497 -1.9% 1.02x (?)
ObjectiveCBridgeToNSString 1207 1207 +0.0% 1.00x
ObserverClosure 5701 5710 +0.2% 1.00x (?)
ObserverForwarderStruct 3925 3926 +0.0% 1.00x (?)
ObserverPartiallyAppliedMethod 7015 6990 -0.4% 1.00x (?)
ObserverUnappliedMethod 7357 7350 -0.1% 1.00x (?)
OpenClose 471 472 +0.2% 1.00x (?)
PartialApplyDynamicType 37763 38259 +1.3% 0.99x (?)
Phonebook 18156 18247 +0.5% 1.00x (?)
PointerArithmetics 101705 102820 +1.1% 0.99x (?)
PolymorphicCalls 5355 5386 +0.6% 0.99x (?)
PopFrontArray 4149 4139 -0.2% 1.00x (?)
PopFrontArrayGeneric 5113 5084 -0.6% 1.01x
PopFrontUnsafePointer 10046 10069 +0.2% 1.00x (?)
PrefixAnyCollection 12189 12200 +0.1% 1.00x (?)
PrefixAnyCollectionLazy 87840 89096 +1.4% 0.99x (?)
PrefixAnySeqCRangeIter 14595 14674 +0.5% 0.99x (?)
PrefixAnySeqCRangeIterLazy 14621 14674 +0.4% 1.00x (?)
PrefixAnySeqCntRange 12112 12120 +0.1% 1.00x (?)
PrefixAnySeqCntRangeLazy 12157 12176 +0.2% 1.00x (?)
PrefixAnySequence 8028 8047 +0.2% 1.00x (?)
PrefixAnySequenceLazy 7983 8031 +0.6% 0.99x
PrefixArray 3459 3387 -2.1% 1.02x
PrefixArrayLazy 22793 22797 +0.0% 1.00x (?)
PrefixCountableRange 292 293 +0.3% 1.00x (?)
PrefixCountableRangeLazy 22932 22956 +0.1% 1.00x (?)
PrefixSequence 7778 7776 -0.0% 1.00x (?)
PrefixSequenceLazy 7884 7822 -0.8% 1.01x (?)
PrefixWhileAnyCollection 22030 22073 +0.2% 1.00x
PrefixWhileAnyCollectionLazy 14240 14332 +0.6% 0.99x (?)
PrefixWhileAnySeqCRangeIter 29125 29167 +0.1% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 14483 14510 +0.2% 1.00x (?)
PrefixWhileAnySeqCntRange 22046 22043 -0.0% 1.00x (?)
PrefixWhileAnySeqCntRangeLazy 14333 14390 +0.4% 1.00x (?)
PrefixWhileAnySequence 23113 23012 -0.4% 1.00x
PrefixWhileAnySequenceLazy 8136 8210 +0.9% 0.99x (?)
PrefixWhileArray 9603 9577 -0.3% 1.00x (?)
PrefixWhileArrayLazy 10814 10959 +1.3% 0.99x
PrefixWhileCountableRange 9935 9918 -0.2% 1.00x
PrefixWhileCountableRangeLazy 14022 13972 -0.4% 1.00x (?)
PrefixWhileSequence 22911 22838 -0.3% 1.00x (?)
PrefixWhileSequenceLazy 7982 7957 -0.3% 1.00x
Prims 8617 8645 +0.3% 1.00x (?)
PrimsSplit 8668 8650 -0.2% 1.00x (?)
QueueConcrete 13384 13346 -0.3% 1.00x
QueueGeneric 16921 16874 -0.3% 1.00x
RC4 15158 15149 -0.1% 1.00x (?)
RGBHistogram 23106 23202 +0.4% 1.00x (?)
RGBHistogramOfObjects 85343 85586 +0.3% 1.00x (?)
RangeAssignment 2006 2038 +1.6% 0.98x (?)
RangeIterationSigned 15122 15131 +0.1% 1.00x (?)
RangeIterationSigned64 34730 34777 +0.1% 1.00x (?)
RangeIterationUnsigned 31119 31051 -0.2% 1.00x
RangeReplaceableCollectionPlusDefault 7144 7139 -0.1% 1.00x (?)
RecursiveOwnedParameter 7204 7054 -2.1% 1.02x
ReversedArray 13211 13210 -0.0% 1.00x (?)
ReversedBidirectional 42075 41902 -0.4% 1.00x (?)
ReversedDictionary 19801 19852 +0.3% 1.00x (?)
RomanNumbers 1127724 1140713 +1.2% 0.99x (?)
SetExclusiveOr 15468 15485 +0.1% 1.00x (?)
SetIntersect 7366 7452 +1.2% 0.99x
SetIntersect_OfObjects 10929 11367 +4.0% 0.96x (?)
SetIsSubsetOf 1205 1221 +1.3% 0.99x
SetIsSubsetOf_OfObjects 1393 1401 +0.6% 0.99x (?)
SetUnion 10591 10632 +0.4% 1.00x (?)
SetUnion_OfObjects 26511 27844 +5.0% 0.95x (?)
SevenBoom 1489 1499 +0.7% 0.99x (?)
Sim2DArray 42297 42316 +0.0% 1.00x (?)
SortLargeExistentials 13820 13846 +0.2% 1.00x (?)
SortLettersInPlace 2393 2405 +0.5% 1.00x
SortSortedStrings 874 881 +0.8% 0.99x
SortStrings 1737 1735 -0.1% 1.00x (?)
SortStringsUnicode 13903 13898 -0.0% 1.00x (?)
StackPromo 79591 80986 +1.8% 0.98x (?)
StaticArray 2341 2376 +1.5% 0.99x (?)
StrComplexWalk 5977 5977 +0.0% 1.00x
StrToInt 51220 51712 +1.0% 0.99x
StringAdder 4234 4237 +0.1% 1.00x (?)
StringBuilder 6328 6179 -2.4% 1.02x (?)
StringBuilderLong 2442 2430 -0.5% 1.00x (?)
StringComparison_abnormal 1263 1263 +0.0% 1.00x
StringComparison_ascii 8507 8518 +0.1% 1.00x (?)
StringComparison_emoji 3396 3387 -0.3% 1.00x (?)
StringComparison_fastPrenormal 11786 11772 -0.1% 1.00x (?)
StringComparison_latin1 8468 8477 +0.1% 1.00x (?)
StringComparison_longSharedPrefix 11690 11694 +0.0% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 6258 6264 +0.1% 1.00x (?)
StringComparison_slowerPrenormal 6051 6105 +0.9% 0.99x (?)
StringComparison_zalgo 2536 2545 +0.4% 1.00x (?)
StringEnumRawValueInitialization 17696 17783 +0.5% 1.00x (?)
StringEqualPointerComparison 2800 2800 +0.0% 1.00x
StringFromLongWholeSubstring 21 21 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 178 178 +0.0% 1.00x
StringHasPrefixAscii 2727 2698 -1.1% 1.01x
StringHasPrefixUnicode 26160 26248 +0.3% 1.00x (?)
StringHasSuffixAscii 2758 2795 +1.3% 0.99x
StringHasSuffixUnicode 77163 77523 +0.5% 1.00x (?)
StringInterpolation 12491 12017 -3.8% 1.04x (?)
StringMatch 29948 30110 +0.5% 0.99x (?)
StringRemoveDupes 1231 1237 +0.5% 1.00x (?)
StringUTF16Builder 6792 6810 +0.3% 1.00x (?)
StringWalk 11471 11440 -0.3% 1.00x (?)
StringWithCString 35201 35272 +0.2% 1.00x (?)
StringWordBuilder 2238 2218 -0.9% 1.01x (?)
StringWordBuilderReservingCapacity 1961 1953 -0.4% 1.00x (?)
SubstringComparable 3726 3736 +0.3% 1.00x (?)
SubstringEqualString 3245 3115 -4.0% 1.04x (?)
SubstringEquatable 7082 7260 +2.5% 0.98x (?)
SubstringFromLongString 22 22 +0.0% 1.00x
SubstringFromLongStringGeneric 93 93 +0.0% 1.00x
SuffixAnyCollection 4078 4078 +0.0% 1.00x
SuffixAnySeqCRangeIter 30306 30316 +0.0% 1.00x (?)
SuffixAnySeqCRangeIterLazy 29893 29882 -0.0% 1.00x (?)
SuffixAnySeqCntRange 4048 4054 +0.1% 1.00x (?)
SuffixAnySeqCntRangeLazy 4107 4082 -0.6% 1.01x
SuffixAnySequence 22328 22396 +0.3% 1.00x (?)
SuffixAnySequenceLazy 22365 22402 +0.2% 1.00x (?)
SuffixCountableRange 101 101 +0.0% 1.00x
SuffixCountableRangeLazy 7668 7662 -0.1% 1.00x (?)
SuffixSequence 22249 22251 +0.0% 1.00x (?)
SuffixSequenceLazy 22296 22264 -0.1% 1.00x (?)
SumUsingReduce 146612 146618 +0.0% 1.00x (?)
SumUsingReduceInto 141202 141340 +0.1% 1.00x (?)
SuperChars 192055 191875 -0.1% 1.00x (?)
TwoSum 3526 3542 +0.5% 1.00x (?)
TypeFlood 142 146 +2.8% 0.97x (?)
UTF8Decode 27308 27305 -0.0% 1.00x (?)
Walsh 10840 10798 -0.4% 1.00x (?)
WordCountHistogramASCII 41690 41937 +0.6% 0.99x (?)
WordCountHistogramUTF16 91038 90162 -1.0% 1.01x (?)
WordCountUniqueASCII 7464 7450 -0.2% 1.00x (?)
WordCountUniqueUTF16 29367 29639 +0.9% 0.99x (?)
WordSplitASCII 22843 22684 -0.7% 1.01x (?)
WordSplitUTF16 23981 23767 -0.9% 1.01x (?)
XorLoop 20963 20964 +0.0% 1.00x (?)
Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 8-Core Intel Xeon E5
  Processor Speed: 3 GHz
  Number of Processors: 1
  Total Number of Cores: 8
  L2 Cache (per Core): 256 KB
  L3 Cache: 25 MB
  Memory: 64 GB

@airspeedswift
Copy link
Member Author

@moiseev looks like the StringMatch regression persisted, which I agree is odd. Will follow up post merge.

@airspeedswift airspeedswift merged commit 3b4eacc into swiftlang:master Feb 15, 2018
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.

4 participants