Skip to content

stdlib: replace an obsolete initialize function in UnsafeBufferPointer.swapAt with the new one #16270

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
May 1, 2018

Conversation

eeckstein
Copy link
Contributor

This brings back performance on stdlib sort because the obsoleted function in UnsafePointer is not inlinable.

@eeckstein
Copy link
Contributor Author

@swift-ci smoke test

@eeckstein
Copy link
Contributor Author

@swift-ci smoke benchmark

@eeckstein eeckstein requested a review from airspeedswift May 1, 2018 00:26
@swift-ci
Copy link
Contributor

swift-ci commented May 1, 2018

Build comment file:

Optimized (O)

Regression (31)
TEST OLD NEW DELTA SPEEDUP
Sim2DArray 417 599 +43.6% 0.70x
BinaryFloatingPointPropertiesBinade 25 31 +24.0% 0.81x
DictionarySwapAt 6711 8299 +23.7% 0.81x
RangeIterationSigned 171 200 +17.0% 0.86x
ObjectiveCBridgeStubFromArrayOfNSString 33105 37701 +13.9% 0.88x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4731 5315 +12.3% 0.89x (?)
Chars 1092 1216 +11.4% 0.90x
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 45274 50168 +10.8% 0.90x (?)
CharIndexing_tweet_unicodeScalars 30850 33860 +9.8% 0.91x
CharIndexing_ascii_unicodeScalars 15899 17367 +9.2% 0.92x
CharIndexing_japanese_unicodeScalars 19042 20795 +9.2% 0.92x
CharIndexing_chinese_unicodeScalars 12047 13151 +9.2% 0.92x
CharIndexing_russian_unicodeScalars 13249 14462 +9.2% 0.92x
CharIndexing_korean_unicodeScalars 15438 16842 +9.1% 0.92x
SuffixCountableRange 11 12 +9.1% 0.92x
SuffixCountableRangeLazy 11 12 +9.1% 0.92x
DropLastCountableRangeLazy 11 12 +9.1% 0.92x
CharIndexing_punctuatedJapanese_unicodeScalars 2892 3137 +8.5% 0.92x (?)
DataAppendBytes 6234 6746 +8.2% 0.92x (?)
MapReduceAnyCollection 400 429 +7.2% 0.93x
RemoveWhereFilterInts 43 46 +7.0% 0.93x
CharIteration_tweet_unicodeScalars 40103 42767 +6.6% 0.94x
SuffixAnySequenceLazy 5150 5479 +6.4% 0.94x (?)
CharIndexing_punctuated_unicodeScalars 3710 3934 +6.0% 0.94x (?)
OpenClose 266 282 +6.0% 0.94x
CharIteration_japanese_unicodeScalars 24695 26112 +5.7% 0.95x
CharIteration_russian_unicodeScalars 17161 18145 +5.7% 0.95x
BinaryFloatingPointPropertiesUlp 35 37 +5.7% 0.95x
CharIteration_ascii_unicodeScalars 20604 21774 +5.7% 0.95x
CharIteration_chinese_unicodeScalars 15593 16476 +5.7% 0.95x
CharIteration_korean_unicodeScalars 19997 21121 +5.6% 0.95x
Improvement (16)
TEST OLD NEW DELTA SPEEDUP
StringBuilderWithLongSubstring 1829 1594 -12.8% 1.15x (?)
ChainedFilterMap 1408 1248 -11.4% 1.13x
ObjectiveCBridgeFromNSArrayAnyObjectToString 51395 45697 -11.1% 1.12x
StaticArray 10 9 -10.0% 1.11x
SumUsingReduce 102 92 -9.8% 1.11x
Phonebook 5029 4604 -8.5% 1.09x
PointerArithmetics 34379 31490 -8.4% 1.09x
MapReduceLazyCollectionShort 37 34 -8.1% 1.09x
MapReduce 400 371 -7.2% 1.08x
RemoveWhereMoveInts 15 14 -6.7% 1.07x
RGBHistogram 3459 3233 -6.5% 1.07x
SortStrings 2083 1950 -6.4% 1.07x
NopDeinit 32200 30157 -6.3% 1.07x
ObjectiveCBridgeToNSDictionary 27944 26379 -5.6% 1.06x (?)
StringUTF16SubstringBuilder 6289 5939 -5.6% 1.06x (?)
Dictionary3 267 253 -5.2% 1.06x
No Changes (377)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3747 3852 +2.8% 0.97x (?)
AnyHashableWithAClass 85294 84746 -0.6% 1.01x
Array2D 2514 2552 +1.5% 0.99x (?)
ArrayAppend 1105 1109 +0.4% 1.00x (?)
ArrayAppendArrayOfInt 796 803 +0.9% 0.99x (?)
ArrayAppendAscii 13892 13949 +0.4% 1.00x
ArrayAppendFromGeneric 798 799 +0.1% 1.00x (?)
ArrayAppendGenericStructs 1429 1432 +0.2% 1.00x
ArrayAppendLatin1 40700 42157 +3.6% 0.97x
ArrayAppendLazyMap 1341 1344 +0.2% 1.00x (?)
ArrayAppendOptionals 1424 1426 +0.1% 1.00x (?)
ArrayAppendRepeatCol 1365 1340 -1.8% 1.02x
ArrayAppendReserved 842 842 +0.0% 1.00x
ArrayAppendSequence 1121 1120 -0.1% 1.00x (?)
ArrayAppendStrings 6330 6330 +0.0% 1.00x
ArrayAppendToFromGeneric 799 800 +0.1% 1.00x (?)
ArrayAppendToGeneric 802 798 -0.5% 1.01x
ArrayAppendUTF16 40767 42733 +4.8% 0.95x
ArrayInClass 86 86 +0.0% 1.00x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 151 151 +0.0% 1.00x
ArrayOfGenericRef 4419 4428 +0.2% 1.00x (?)
ArrayOfPOD 183 183 +0.0% 1.00x
ArrayOfRef 4385 4386 +0.0% 1.00x (?)
ArrayPlusEqualArrayOfInt 796 799 +0.4% 1.00x (?)
ArrayPlusEqualFiveElementCollection 5633 5608 -0.4% 1.00x (?)
ArrayPlusEqualSingleElementCollection 1109 1111 +0.2% 1.00x
ArrayPlusEqualThreeElements 1665 1666 +0.1% 1.00x (?)
ArraySubscript 1532 1532 +0.0% 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
BinaryFloatingPointPropertiesNextUp 28 28 +0.0% 1.00x
BitCount 202 211 +4.5% 0.96x
ByteSwap 101 106 +5.0% 0.95x
COWTree 5388 5404 +0.3% 1.00x (?)
CSVParsing 715529 714847 -0.1% 1.00x (?)
CSVParsingAlt 790155 785619 -0.6% 1.01x
CSVParsingAltIndices 343775 342389 -0.4% 1.00x (?)
CStringLongAscii 4638 4880 +5.2% 0.95x
CStringLongNonAscii 2231 2201 -1.3% 1.01x
CStringShortAscii 3158 3202 +1.4% 0.99x (?)
Calculator 1107 1112 +0.5% 1.00x
CaptureProp 4117 4091 -0.6% 1.01x
CharIndexing_ascii_unicodeScalars_Backwards 16173 16373 +1.2% 0.99x
CharIndexing_chinese_unicodeScalars_Backwards 12269 12393 +1.0% 0.99x
CharIndexing_japanese_unicodeScalars_Backwards 19467 19593 +0.6% 0.99x
CharIndexing_korean_unicodeScalars_Backwards 15689 15870 +1.2% 0.99x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2955 3076 +4.1% 0.96x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 3685 3719 +0.9% 0.99x
CharIndexing_russian_unicodeScalars_Backwards 13506 13642 +1.0% 0.99x
CharIndexing_tweet_unicodeScalars_Backwards 31433 32272 +2.7% 0.97x
CharIndexing_utf16_unicodeScalars 22610 23165 +2.5% 0.98x
CharIndexing_utf16_unicodeScalars_Backwards 23258 23342 +0.4% 1.00x
CharIteration_ascii_unicodeScalars_Backwards 14985 15115 +0.9% 0.99x
CharIteration_chinese_unicodeScalars_Backwards 11347 11445 +0.9% 0.99x
CharIteration_japanese_unicodeScalars_Backwards 17927 18095 +0.9% 0.99x
CharIteration_korean_unicodeScalars_Backwards 14529 14649 +0.8% 0.99x
CharIteration_punctuatedJapanese_unicodeScalars 3697 3884 +5.1% 0.95x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2718 2737 +0.7% 0.99x
CharIteration_punctuated_unicodeScalars 4657 4875 +4.7% 0.96x
CharIteration_punctuated_unicodeScalars_Backwards 3401 3426 +0.7% 0.99x
CharIteration_russian_unicodeScalars_Backwards 12478 12588 +0.9% 0.99x
CharIteration_tweet_unicodeScalars_Backwards 29645 29839 +0.7% 0.99x
CharIteration_utf16_unicodeScalars 27687 28113 +1.5% 0.98x
CharIteration_utf16_unicodeScalars_Backwards 18150 18664 +2.8% 0.97x
CharacterLiteralsLarge 5969 6023 +0.9% 0.99x (?)
CharacterLiteralsSmall 217 220 +1.4% 0.99x
CharacterPropertiesFetch 4523 4573 +1.1% 0.99x (?)
CharacterPropertiesPrecomputed 1098 1094 -0.4% 1.00x (?)
CharacterPropertiesStashed 1465 1479 +1.0% 0.99x (?)
CharacterPropertiesStashedMemo 1553 1579 +1.7% 0.98x
ClassArrayGetter 15 15 +0.0% 1.00x
Combos 487 487 +0.0% 1.00x
DataAccessBytes 1225 1230 +0.4% 1.00x
DataAppendArray 6451 6639 +2.9% 0.97x (?)
DataAppendDataLargeToLarge 71307 71120 -0.3% 1.00x (?)
DataAppendDataLargeToMedium 37027 36392 -1.7% 1.02x (?)
DataAppendDataLargeToSmall 35694 35850 +0.4% 1.00x (?)
DataAppendDataMediumToLarge 38991 39279 +0.7% 0.99x (?)
DataAppendDataMediumToMedium 8142 8151 +0.1% 1.00x (?)
DataAppendDataMediumToSmall 7290 7081 -2.9% 1.03x (?)
DataAppendDataSmallToLarge 37900 38067 +0.4% 1.00x (?)
DataAppendDataSmallToMedium 7556 7729 +2.3% 0.98x (?)
DataAppendDataSmallToSmall 7490 7150 -4.5% 1.05x (?)
DataAppendSequence 19782 19466 -1.6% 1.02x (?)
DataCopyBytes 2503 2542 +1.6% 0.98x
DataCount 38 37 -2.6% 1.03x
DataMutateBytes 4371 4386 +0.3% 1.00x (?)
DataReplaceLarge 41975 43462 +3.5% 0.97x (?)
DataReplaceLargeBuffer 59018 59195 +0.3% 1.00x (?)
DataReplaceMedium 11680 11984 +2.6% 0.97x (?)
DataReplaceMediumBuffer 13121 13228 +0.8% 0.99x (?)
DataReplaceSmall 8769 9035 +3.0% 0.97x (?)
DataReplaceSmallBuffer 10173 10074 -1.0% 1.01x
DataReset 3277 3282 +0.2% 1.00x (?)
DataSetCount 892 903 +1.2% 0.99x
DataSubscript 237 242 +2.1% 0.98x
DictOfArraysToArrayOfDicts 811 828 +2.1% 0.98x
Dictionary 683 681 -0.3% 1.00x (?)
Dictionary2 809 808 -0.1% 1.00x (?)
Dictionary2OfObjects 2223 2212 -0.5% 1.00x (?)
Dictionary3OfObjects 761 762 +0.1% 1.00x (?)
Dictionary4 343 334 -2.6% 1.03x
Dictionary4Legacy 730 728 -0.3% 1.00x
Dictionary4OfObjects 453 451 -0.4% 1.00x (?)
Dictionary4OfObjectsLegacy 937 938 +0.1% 1.00x (?)
DictionaryBridge 1219 1225 +0.5% 1.00x (?)
DictionaryCopy 106890 107174 +0.3% 1.00x
DictionaryFilter 106365 107592 +1.2% 0.99x
DictionaryGroup 215 215 +0.0% 1.00x
DictionaryGroupOfObjects 2152 2150 -0.1% 1.00x (?)
DictionaryLiteral 1954 1916 -1.9% 1.02x
DictionaryOfObjects 2452 2463 +0.4% 1.00x (?)
DictionaryRemove 4210 4369 +3.8% 0.96x
DictionaryRemoveOfObjects 26217 26144 -0.3% 1.00x (?)
DictionarySubscriptDefaultMutation 267 268 +0.4% 1.00x (?)
DictionarySubscriptDefaultMutationArray 625 625 +0.0% 1.00x
DictionarySubscriptDefaultMutationArrayOfObjects 4045 4037 -0.2% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 1730 1729 -0.1% 1.00x (?)
DictionarySwap 1029 1029 +0.0% 1.00x
DictionarySwapAtOfObjects 52521 52690 +0.3% 1.00x (?)
DictionarySwapOfObjects 8598 8600 +0.0% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 84 84 +0.0% 1.00x
DropFirstAnyCollectionLazy 63469 61952 -2.4% 1.02x
DropFirstAnySeqCRangeIter 21263 21252 -0.1% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 21260 21260 +0.0% 1.00x
DropFirstAnySeqCntRange 41 41 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 41 41 +0.0% 1.00x
DropFirstAnySequence 4980 4963 -0.3% 1.00x (?)
DropFirstAnySequenceLazy 4952 4953 +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 2683 2682 -0.0% 1.00x (?)
DropFirstSequenceLazy 2774 2775 +0.0% 1.00x (?)
DropLastAnyCollection 31 31 +0.0% 1.00x
DropLastAnyCollectionLazy 20614 21196 +2.8% 0.97x (?)
DropLastAnySeqCRangeIter 3637 3618 -0.5% 1.01x
DropLastAnySeqCRangeIterLazy 3635 3626 -0.2% 1.00x
DropLastAnySeqCntRange 13 13 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 13 13 +0.0% 1.00x
DropLastAnySequence 5906 5910 +0.1% 1.00x (?)
DropLastAnySequenceLazy 5465 5478 +0.2% 1.00x (?)
DropLastCountableRange 11 11 +0.0% 1.00x
DropLastSequence 570 544 -4.6% 1.05x
DropLastSequenceLazy 571 545 -4.6% 1.05x
DropWhileAnyCollection 107 107 +0.0% 1.00x
DropWhileAnyCollectionLazy 125 125 +0.0% 1.00x
DropWhileAnySeqCRangeIter 16662 16675 +0.1% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 125 125 +0.0% 1.00x
DropWhileAnySeqCntRange 50 50 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 126 125 -0.8% 1.01x
DropWhileAnySequence 4863 4853 -0.2% 1.00x
DropWhileAnySequenceLazy 1856 1857 +0.1% 1.00x
DropWhileArrayLazy 88 88 +0.0% 1.00x
DropWhileCountableRange 36 36 +0.0% 1.00x
DropWhileCountableRangeLazy 105 105 +0.0% 1.00x
DropWhileSequence 2224 2197 -1.2% 1.01x
DropWhileSequenceLazy 88 88 +0.0% 1.00x
EqualStringSubstring 57 56 -1.8% 1.02x
EqualSubstringString 66 66 +0.0% 1.00x
EqualSubstringSubstring 48 48 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 48 48 +0.0% 1.00x
ErrorHandling 1520 1583 +4.1% 0.96x
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FatCompactMap 204141 203884 -0.1% 1.00x
FilterEvenUsingReduce 1293 1318 +1.9% 0.98x (?)
FilterEvenUsingReduceInto 147 147 +0.0% 1.00x
FloatingPointPrinting_Double_description_small 23663 23739 +0.3% 1.00x (?)
FloatingPointPrinting_Double_description_uniform 23126 23122 -0.0% 1.00x (?)
FloatingPointPrinting_Double_interpolated 78070 77837 -0.3% 1.00x (?)
FloatingPointPrinting_Float80_description_small 30584 30622 +0.1% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 29711 29752 +0.1% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 82250 84101 +2.3% 0.98x
FloatingPointPrinting_Float_description_small 5160 5389 +4.4% 0.96x
FloatingPointPrinting_Float_description_uniform 4971 4985 +0.3% 1.00x
FloatingPointPrinting_Float_interpolated 53922 53218 -1.3% 1.01x
FrequenciesUsingReduce 4986 5118 +2.6% 0.97x
FrequenciesUsingReduceInto 1521 1527 +0.4% 1.00x (?)
Hanoi 2157 2164 +0.3% 1.00x (?)
HashTest 1034 1028 -0.6% 1.01x (?)
Histogram 707 702 -0.7% 1.01x
Integrate 341 335 -1.8% 1.02x
IterateData 1868 1825 -2.3% 1.02x
Join 186 185 -0.5% 1.01x
LazilyFilteredArrayContains 36660 37456 +2.2% 0.98x
LazilyFilteredArrays 65278 67255 +3.0% 0.97x (?)
LazilyFilteredRange 3876 3873 -0.1% 1.00x (?)
LessSubstringSubstring 48 48 +0.0% 1.00x
LessSubstringSubstringGenericComparable 48 48 +0.0% 1.00x
LinkedList 7525 7540 +0.2% 1.00x (?)
LuhnAlgoEager 298 297 -0.3% 1.00x (?)
LuhnAlgoLazy 299 304 +1.7% 0.98x
MapReduceAnyCollectionShort 2265 2250 -0.7% 1.01x
MapReduceClass 3009 3022 +0.4% 1.00x
MapReduceClassShort 4588 4607 +0.4% 1.00x (?)
MapReduceLazyCollection 13 13 +0.0% 1.00x
MapReduceLazySequence 86 86 +0.0% 1.00x
MapReduceSequence 458 458 +0.0% 1.00x
MapReduceShort 2012 2055 +2.1% 0.98x
MapReduceShortString 30 30 +0.0% 1.00x
MapReduceString 79 79 +0.0% 1.00x
Memset 223 213 -4.5% 1.05x
MonteCarloE 10331 10340 +0.1% 1.00x (?)
MonteCarloPi 42832 42738 -0.2% 1.00x
NSDictionaryCastToSwift 5581 5567 -0.3% 1.00x (?)
NSError 170 172 +1.2% 0.99x
NSStringConversion 730 711 -2.6% 1.03x
NibbleSort 3670 3669 -0.0% 1.00x (?)
ObjectAllocation 132 133 +0.8% 0.99x
ObjectiveCBridgeFromNSArrayAnyObject 25957 25888 -0.3% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 5388 5311 -1.4% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 118950 120266 +1.1% 0.99x (?)
ObjectiveCBridgeFromNSSetAnyObject 53600 52739 -1.6% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 67637 67111 -0.8% 1.01x (?)
ObjectiveCBridgeFromNSString 1175 1197 +1.9% 0.98x
ObjectiveCBridgeFromNSStringForced 2677 2679 +0.1% 1.00x (?)
ObjectiveCBridgeStubDataAppend 11339 11329 -0.1% 1.00x (?)
ObjectiveCBridgeStubDateMutation 401 401 +0.0% 1.00x
ObjectiveCBridgeStubFromNSDate 6560 6484 -1.2% 1.01x (?)
ObjectiveCBridgeStubFromNSString 1039 1037 -0.2% 1.00x (?)
ObjectiveCBridgeStubFromNSStringRef 155 161 +3.9% 0.96x (?)
ObjectiveCBridgeStubNSDataAppend 2524 2619 +3.8% 0.96x (?)
ObjectiveCBridgeStubNSDateMutationRef 13268 12800 -3.5% 1.04x (?)
ObjectiveCBridgeStubToArrayOfNSString 39257 39745 +1.2% 0.99x (?)
ObjectiveCBridgeStubToNSDate 15405 15862 +3.0% 0.97x (?)
ObjectiveCBridgeStubToNSDateRef 3430 3428 -0.1% 1.00x (?)
ObjectiveCBridgeStubToNSString 2381 2371 -0.4% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 116 113 -2.6% 1.03x
ObjectiveCBridgeStubURLAppendPath 282655 288421 +2.0% 0.98x (?)
ObjectiveCBridgeStubURLAppendPathRef 290175 297113 +2.4% 0.98x (?)
ObjectiveCBridgeToNSArray 15124 14977 -1.0% 1.01x (?)
ObjectiveCBridgeToNSSet 17258 17507 +1.4% 0.99x (?)
ObjectiveCBridgeToNSString 487 503 +3.3% 0.97x
ObserverClosure 2155 2159 +0.2% 1.00x (?)
ObserverForwarderStruct 1257 1262 +0.4% 1.00x (?)
ObserverPartiallyAppliedMethod 3738 3734 -0.1% 1.00x (?)
ObserverUnappliedMethod 2598 2586 -0.5% 1.00x (?)
PartialApplyDynamicType 0 0 +0.0% 1.00x
PolymorphicCalls 25 25 +0.0% 1.00x
PopFrontArray 1870 1897 +1.4% 0.99x
PopFrontArrayGeneric 1882 1901 +1.0% 0.99x (?)
PopFrontUnsafePointer 9021 8992 -0.3% 1.00x (?)
PrefixAnyCollection 84 84 +0.0% 1.00x
PrefixAnyCollectionLazy 61804 62448 +1.0% 0.99x (?)
PrefixAnySeqCRangeIter 16528 16533 +0.0% 1.00x (?)
PrefixAnySeqCRangeIterLazy 16536 16518 -0.1% 1.00x (?)
PrefixAnySeqCntRange 28 28 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 28 28 +0.0% 1.00x
PrefixAnySequence 4364 4379 +0.3% 1.00x (?)
PrefixAnySequenceLazy 4428 4428 +0.0% 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 2222 2223 +0.0% 1.00x (?)
PrefixSequenceLazy 2275 2276 +0.0% 1.00x (?)
PrefixWhileAnyCollection 154 154 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 90 90 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 9012 8998 -0.2% 1.00x
PrefixWhileAnySeqCRangeIterLazy 72 73 +1.4% 0.99x
PrefixWhileAnySeqCntRange 59 60 +1.7% 0.98x
PrefixWhileAnySeqCntRangeLazy 90 90 +0.0% 1.00x
PrefixWhileAnySequence 10165 10219 +0.5% 0.99x (?)
PrefixWhileAnySequenceLazy 1393 1393 +0.0% 1.00x
PrefixWhileArray 88 88 +0.0% 1.00x
PrefixWhileArrayLazy 70 70 +0.0% 1.00x
PrefixWhileCountableRange 36 36 +0.0% 1.00x
PrefixWhileCountableRangeLazy 35 35 +0.0% 1.00x
PrefixWhileSequence 361 360 -0.3% 1.00x
PrefixWhileSequenceLazy 52 52 +0.0% 1.00x
Prims 897 903 +0.7% 0.99x (?)
PrimsSplit 919 916 -0.3% 1.00x (?)
QueueConcrete 1146 1146 +0.0% 1.00x
QueueGeneric 1149 1147 -0.2% 1.00x
RC4 170 168 -1.2% 1.01x
RGBHistogramOfObjects 24375 23740 -2.6% 1.03x
RangeAssignment 352 338 -4.0% 1.04x
RangeReplaceableCollectionPlusDefault 982 986 +0.4% 1.00x (?)
RecursiveOwnedParameter 115 115 +0.0% 1.00x
RemoveWhereFilterString 324 325 +0.3% 1.00x (?)
RemoveWhereFilterStrings 437 436 -0.2% 1.00x (?)
RemoveWhereMoveStrings 707 707 +0.0% 1.00x
RemoveWhereQuadraticInts 1289 1290 +0.1% 1.00x (?)
RemoveWhereQuadraticString 486 484 -0.4% 1.00x
RemoveWhereQuadraticStrings 2753 2756 +0.1% 1.00x (?)
RemoveWhereSwapInts 19 19 +0.0% 1.00x
RemoveWhereSwapStrings 859 856 -0.3% 1.00x
ReversedArray 57 57 +0.0% 1.00x
ReversedBidirectional 16588 16345 -1.5% 1.01x
ReversedDictionary 272 280 +2.9% 0.97x
RomanNumbers 137882 139998 +1.5% 0.98x
SequenceAlgosAnySequence 11712 11721 +0.1% 1.00x
SequenceAlgosArray 1580 1572 -0.5% 1.01x
SequenceAlgosContiguousArray 1581 1578 -0.2% 1.00x (?)
SequenceAlgosList 1348 1350 +0.1% 1.00x
SequenceAlgosRange 2576 2577 +0.0% 1.00x (?)
SequenceAlgosUnfoldSequence 1107 1103 -0.4% 1.00x
SetExclusiveOr 5241 5292 +1.0% 0.99x (?)
SetExclusiveOr_OfObjects 11803 11923 +1.0% 0.99x
SetIntersect 702 700 -0.3% 1.00x (?)
SetIntersect_OfObjects 1562 1581 +1.2% 0.99x (?)
SetIsSubsetOf 354 354 +0.0% 1.00x
SetIsSubsetOf_OfObjects 456 445 -2.4% 1.02x (?)
SetUnion 4578 4550 -0.6% 1.01x (?)
SetUnion_OfObjects 10187 10306 +1.2% 0.99x
SevenBoom 875 877 +0.2% 1.00x (?)
SortLargeExistentials 6207 6048 -2.6% 1.03x
SortLettersInPlace 1072 1040 -3.0% 1.03x
SortSortedStrings 1010 1004 -0.6% 1.01x
SortStringsUnicode 2579 2499 -3.1% 1.03x
StackPromo 22768 22794 +0.1% 1.00x (?)
StrComplexWalk 1784 1788 +0.2% 1.00x
StrToInt 2947 2865 -2.8% 1.03x
StringAdder 764 767 +0.4% 1.00x
StringBuilder 805 785 -2.5% 1.03x
StringBuilderLong 1267 1261 -0.5% 1.00x (?)
StringComparison_abnormal 772 775 +0.4% 1.00x (?)
StringComparison_ascii 1252 1270 +1.4% 0.99x
StringComparison_emoji 818 821 +0.4% 1.00x
StringComparison_fastPrenormal 797 804 +0.9% 0.99x
StringComparison_latin1 627 631 +0.6% 0.99x
StringComparison_longSharedPrefix 928 935 +0.8% 0.99x
StringComparison_nonBMPSlowestPrenormal 1609 1618 +0.6% 0.99x (?)
StringComparison_slowerPrenormal 1706 1713 +0.4% 1.00x
StringComparison_zalgo 125145 124613 -0.4% 1.00x (?)
StringEdits 169667 172091 +1.4% 0.99x (?)
StringEnumRawValueInitialization 924 928 +0.4% 1.00x
StringEqualPointerComparison 295 286 -3.1% 1.03x
StringFromLongWholeSubstring 21 21 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 21 21 +0.0% 1.00x
StringHasPrefixAscii 2033 2062 +1.4% 0.99x
StringHasPrefixUnicode 109230 111628 +2.2% 0.98x
StringHasSuffixAscii 2176 2204 +1.3% 0.99x
StringHasSuffixUnicode 114481 113807 -0.6% 1.01x (?)
StringInterpolation 10461 10427 -0.3% 1.00x (?)
StringInterpolationManySmallSegments 19467 19976 +2.6% 0.97x
StringInterpolationSmall 6694 6583 -1.7% 1.02x
StringMatch 11364 11805 +3.9% 0.96x
StringRemoveDupes 682 689 +1.0% 0.99x (?)
StringUTF16Builder 2746 2771 +0.9% 0.99x (?)
StringWalk 1422 1434 +0.8% 0.99x (?)
StringWithCString 41346 43204 +4.5% 0.96x
StringWordBuilder 2471 2383 -3.6% 1.04x
StringWordBuilderReservingCapacity 1964 1909 -2.8% 1.03x
SubstringComparable 27 27 +0.0% 1.00x
SubstringEqualString 788 785 -0.4% 1.00x (?)
SubstringEquatable 1400 1410 +0.7% 0.99x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 75 75 +0.0% 1.00x
SuffixAnyCollection 31 31 +0.0% 1.00x
SuffixAnyCollectionLazy 20831 20997 +0.8% 0.99x (?)
SuffixAnySeqCRangeIter 3865 3836 -0.8% 1.01x
SuffixAnySeqCRangeIterLazy 3865 3837 -0.7% 1.01x
SuffixAnySeqCntRange 20 20 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 20 20 +0.0% 1.00x
SuffixAnySequence 5251 5260 +0.2% 1.00x (?)
SuffixSequence 3733 3700 -0.9% 1.01x
SuffixSequenceLazy 3726 3708 -0.5% 1.00x
SumUsingReduceInto 97 102 +5.2% 0.95x
SuperChars 14855 14757 -0.7% 1.01x
TwoSum 1488 1465 -1.5% 1.02x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 294 292 -0.7% 1.01x
Walsh 406 416 +2.5% 0.98x
WordCountHistogramASCII 7798 7703 -1.2% 1.01x
WordCountHistogramUTF16 14152 14114 -0.3% 1.00x (?)
WordCountUniqueASCII 2166 2148 -0.8% 1.01x
WordCountUniqueUTF16 7468 7383 -1.1% 1.01x (?)
WordSplitASCII 6612 6629 +0.3% 1.00x (?)
WordSplitUTF16 8657 8519 -1.6% 1.02x (?)
XorLoop 401 405 +1.0% 0.99x

Unoptimized (Onone)

Regression (11)
TEST OLD NEW DELTA SPEEDUP
StringComparison_latin1 3838 4893 +27.5% 0.78x (?)
ObjectiveCBridgeStubFromNSDate 6827 8037 +17.7% 0.85x
DataAppendBytes 5304 6003 +13.2% 0.88x
TypeFlood 207 232 +12.1% 0.89x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 46236 50624 +9.5% 0.91x (?)
DropFirstAnyCollectionLazy 97444 104268 +7.0% 0.93x (?)
DataAppendArray 5561 5915 +6.4% 0.94x (?)
CharIndexing_tweet_unicodeScalars_Backwards 870402 923458 +6.1% 0.94x (?)
DataAppendDataSmallToSmall 5731 6056 +5.7% 0.95x (?)
DataSetCount 577 608 +5.4% 0.95x (?)
StringUTF16SubstringBuilder 23952 25230 +5.3% 0.95x (?)
Improvement (15)
TEST OLD NEW DELTA SPEEDUP
SevenBoom 1373 1091 -20.5% 1.26x
ObjectiveCBridgeFromNSSetAnyObjectForced 6754 5518 -18.3% 1.22x (?)
DataReplaceSmallBuffer 10297 9002 -12.6% 1.14x
ArrayAppendReserved 4398 4054 -7.8% 1.08x
PrefixAnyCollectionLazy 105717 98375 -6.9% 1.07x
ArrayValueProp2 16765 15609 -6.9% 1.07x
ObjectiveCBridgeFromNSString 3100 2894 -6.6% 1.07x
ObjectiveCBridgeToNSArray 16379 15467 -5.6% 1.06x
FrequenciesUsingReduce 11514 10896 -5.4% 1.06x (?)
DropLastAnyCollectionLazy 35082 33201 -5.4% 1.06x (?)
SortStrings 2320 2196 -5.3% 1.06x
FrequenciesUsingReduceInto 3383 3206 -5.2% 1.06x (?)
AngryPhonebook 6217 5892 -5.2% 1.06x (?)
CharIteration_punctuated_unicodeScalars_Backwards 73837 70087 -5.1% 1.05x
DataAppendDataMediumToMedium 7227 6871 -4.9% 1.05x (?)
No Changes (398)
TEST OLD NEW DELTA SPEEDUP
AnyHashableWithAClass 101854 101712 -0.1% 1.00x (?)
Array2D 635084 634894 -0.0% 1.00x (?)
ArrayAppend 4554 4445 -2.4% 1.02x
ArrayAppendArrayOfInt 866 864 -0.2% 1.00x (?)
ArrayAppendAscii 39189 39138 -0.1% 1.00x (?)
ArrayAppendFromGeneric 853 869 +1.9% 0.98x (?)
ArrayAppendGenericStructs 1504 1505 +0.1% 1.00x (?)
ArrayAppendLatin1 64364 64171 -0.3% 1.00x (?)
ArrayAppendLazyMap 171684 172001 +0.2% 1.00x (?)
ArrayAppendOptionals 1500 1519 +1.3% 0.99x
ArrayAppendRepeatCol 184433 184423 -0.0% 1.00x (?)
ArrayAppendSequence 104577 104459 -0.1% 1.00x
ArrayAppendStrings 6461 6460 -0.0% 1.00x (?)
ArrayAppendToFromGeneric 853 869 +1.9% 0.98x
ArrayAppendToGeneric 875 875 +0.0% 1.00x
ArrayAppendUTF16 64048 64019 -0.0% 1.00x (?)
ArrayInClass 6217 6223 +0.1% 1.00x (?)
ArrayLiteral 1818 1832 +0.8% 0.99x (?)
ArrayOfGenericPOD2 1129 1128 -0.1% 1.00x (?)
ArrayOfGenericRef 10781 10755 -0.2% 1.00x (?)
ArrayOfPOD 760 761 +0.1% 1.00x
ArrayOfRef 9923 9930 +0.1% 1.00x (?)
ArrayPlusEqualArrayOfInt 859 871 +1.4% 0.99x
ArrayPlusEqualFiveElementCollection 237006 239856 +1.2% 0.99x (?)
ArrayPlusEqualSingleElementCollection 235918 237839 +0.8% 0.99x
ArrayPlusEqualThreeElements 9425 9427 +0.0% 1.00x (?)
ArraySubscript 108338 107925 -0.4% 1.00x (?)
ArrayValueProp 3687 3683 -0.1% 1.00x (?)
ArrayValueProp3 4266 4259 -0.2% 1.00x (?)
ArrayValueProp4 4212 4177 -0.8% 1.01x (?)
BinaryFloatingPointPropertiesBinade 88 88 +0.0% 1.00x
BinaryFloatingPointPropertiesNextUp 131 128 -2.3% 1.02x
BinaryFloatingPointPropertiesUlp 131 131 +0.0% 1.00x
BitCount 8896 8785 -1.2% 1.01x
ByteSwap 9661 9628 -0.3% 1.00x (?)
COWTree 11775 12217 +3.8% 0.96x (?)
CSVParsing 2921776 2967601 +1.6% 0.98x
CSVParsingAlt 1490620 1511145 +1.4% 0.99x (?)
CSVParsingAltIndices 2428980 2390356 -1.6% 1.02x (?)
CStringLongAscii 5688 5794 +1.9% 0.98x (?)
CStringLongNonAscii 2450 2441 -0.4% 1.00x (?)
CStringShortAscii 6301 6248 -0.8% 1.01x (?)
Calculator 2111 2140 +1.4% 0.99x
CaptureProp 277212 277400 +0.1% 1.00x
ChainedFilterMap 235034 236463 +0.6% 0.99x (?)
CharIndexing_ascii_unicodeScalars 381994 384965 +0.8% 0.99x (?)
CharIndexing_ascii_unicodeScalars_Backwards 430567 432511 +0.5% 1.00x (?)
CharIndexing_chinese_unicodeScalars 294953 294693 -0.1% 1.00x (?)
CharIndexing_chinese_unicodeScalars_Backwards 336270 340781 +1.3% 0.99x
CharIndexing_japanese_unicodeScalars 460704 463443 +0.6% 0.99x (?)
CharIndexing_japanese_unicodeScalars_Backwards 524764 531966 +1.4% 0.99x (?)
CharIndexing_korean_unicodeScalars 372308 376076 +1.0% 0.99x (?)
CharIndexing_korean_unicodeScalars_Backwards 420346 417925 -0.6% 1.01x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 66893 68076 +1.8% 0.98x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 74057 74148 +0.1% 1.00x (?)
CharIndexing_punctuated_unicodeScalars 87054 84343 -3.1% 1.03x
CharIndexing_punctuated_unicodeScalars_Backwards 94577 94739 +0.2% 1.00x (?)
CharIndexing_russian_unicodeScalars 317446 315964 -0.5% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 354746 358359 +1.0% 0.99x (?)
CharIndexing_tweet_unicodeScalars 774463 780263 +0.7% 0.99x
CharIndexing_utf16_unicodeScalars 324962 322356 -0.8% 1.01x (?)
CharIndexing_utf16_unicodeScalars_Backwards 354910 351995 -0.8% 1.01x (?)
CharIteration_ascii_unicodeScalars 151503 150386 -0.7% 1.01x
CharIteration_ascii_unicodeScalars_Backwards 323539 318166 -1.7% 1.02x
CharIteration_chinese_unicodeScalars 113949 113630 -0.3% 1.00x
CharIteration_chinese_unicodeScalars_Backwards 240075 239669 -0.2% 1.00x (?)
CharIteration_japanese_unicodeScalars 180678 180471 -0.1% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 381713 382029 +0.1% 1.00x (?)
CharIteration_korean_unicodeScalars 146057 146101 +0.0% 1.00x (?)
CharIteration_korean_unicodeScalars_Backwards 306626 309604 +1.0% 0.99x (?)
CharIteration_punctuatedJapanese_unicodeScalars 26836 26774 -0.2% 1.00x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 55294 55396 +0.2% 1.00x (?)
CharIteration_punctuated_unicodeScalars 33588 33617 +0.1% 1.00x (?)
CharIteration_russian_unicodeScalars 125861 125193 -0.5% 1.01x
CharIteration_russian_unicodeScalars_Backwards 264911 265607 +0.3% 1.00x (?)
CharIteration_tweet_unicodeScalars 297414 297698 +0.1% 1.00x (?)
CharIteration_tweet_unicodeScalars_Backwards 644058 636783 -1.1% 1.01x (?)
CharIteration_utf16_unicodeScalars 127874 127992 +0.1% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 266287 268078 +0.7% 0.99x (?)
CharacterLiteralsLarge 5930 5892 -0.6% 1.01x (?)
CharacterLiteralsSmall 701 683 -2.6% 1.03x
CharacterPropertiesFetch 5567 5576 +0.2% 1.00x (?)
CharacterPropertiesPrecomputed 3523 3551 +0.8% 0.99x (?)
CharacterPropertiesStashed 2302 2311 +0.4% 1.00x (?)
CharacterPropertiesStashedMemo 4374 4305 -1.6% 1.02x (?)
Chars 36079 36082 +0.0% 1.00x (?)
ClassArrayGetter 987 994 +0.7% 0.99x
Combos 2345 2349 +0.2% 1.00x (?)
DataAccessBytes 2408 2404 -0.2% 1.00x (?)
DataAppendDataLargeToLarge 68374 68421 +0.1% 1.00x (?)
DataAppendDataLargeToMedium 35830 35453 -1.1% 1.01x (?)
DataAppendDataLargeToSmall 34436 34264 -0.5% 1.01x (?)
DataAppendDataMediumToLarge 38022 38012 -0.0% 1.00x (?)
DataAppendDataMediumToSmall 6170 6105 -1.1% 1.01x (?)
DataAppendDataSmallToLarge 37564 37369 -0.5% 1.01x (?)
DataAppendDataSmallToMedium 6421 6498 +1.2% 0.99x (?)
DataAppendSequence 1898066 1900450 +0.1% 1.00x (?)
DataCopyBytes 2642 2624 -0.7% 1.01x (?)
DataCount 223 223 +0.0% 1.00x
DataMutateBytes 5288 5313 +0.5% 1.00x (?)
DataReplaceLarge 40605 40335 -0.7% 1.01x
DataReplaceLargeBuffer 59080 59701 +1.1% 0.99x (?)
DataReplaceMedium 9657 9682 +0.3% 1.00x (?)
DataReplaceMediumBuffer 13743 13957 +1.6% 0.98x (?)
DataReplaceSmall 6871 7039 +2.4% 0.98x (?)
DataReset 2907 2864 -1.5% 1.02x (?)
DataSubscript 444 443 -0.2% 1.00x
DictOfArraysToArrayOfDicts 3461 3512 +1.5% 0.99x (?)
Dictionary 2363 2357 -0.3% 1.00x (?)
Dictionary2 1468 1463 -0.3% 1.00x (?)
Dictionary2OfObjects 4372 4352 -0.5% 1.00x (?)
Dictionary3 880 880 +0.0% 1.00x
Dictionary3OfObjects 2159 2157 -0.1% 1.00x (?)
Dictionary4 1195 1195 +0.0% 1.00x
Dictionary4Legacy 1494 1485 -0.6% 1.01x (?)
Dictionary4OfObjects 1912 1881 -1.6% 1.02x (?)
Dictionary4OfObjectsLegacy 2129 2120 -0.4% 1.00x (?)
DictionaryBridge 1368 1403 +2.6% 0.98x
DictionaryCopy 315130 314134 -0.3% 1.00x (?)
DictionaryFilter 327115 327554 +0.1% 1.00x (?)
DictionaryGroup 4458 4461 +0.1% 1.00x (?)
DictionaryGroupOfObjects 7187 7029 -2.2% 1.02x (?)
DictionaryLiteral 8962 8887 -0.8% 1.01x
DictionaryOfObjects 6084 5967 -1.9% 1.02x (?)
DictionaryRemove 17329 17336 +0.0% 1.00x (?)
DictionaryRemoveOfObjects 52364 52041 -0.6% 1.01x (?)
DictionarySubscriptDefaultMutation 1971 1991 +1.0% 0.99x (?)
DictionarySubscriptDefaultMutationArray 2248 2234 -0.6% 1.01x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 9453 9373 -0.8% 1.01x (?)
DictionarySubscriptDefaultMutationOfObjects 5219 5293 +1.4% 0.99x (?)
DictionarySwap 4942 4937 -0.1% 1.00x (?)
DictionarySwapAt 35243 35213 -0.1% 1.00x (?)
DictionarySwapAtOfObjects 113669 115655 +1.7% 0.98x
DictionarySwapOfObjects 19337 19304 -0.2% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 15444 15419 -0.2% 1.00x (?)
DropFirstAnySeqCRangeIter 23748 23771 +0.1% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 23700 23675 -0.1% 1.00x
DropFirstAnySeqCntRange 15396 15387 -0.1% 1.00x
DropFirstAnySeqCntRangeLazy 15542 15355 -1.2% 1.01x
DropFirstAnySequence 12778 12854 +0.6% 0.99x
DropFirstAnySequenceLazy 12808 12851 +0.3% 1.00x
DropFirstArray 3393 3404 +0.3% 1.00x (?)
DropFirstArrayLazy 29349 29367 +0.1% 1.00x (?)
DropFirstCountableRange 323 312 -3.4% 1.04x
DropFirstCountableRangeLazy 33933 33950 +0.1% 1.00x (?)
DropFirstSequence 12375 12418 +0.3% 1.00x
DropFirstSequenceLazy 12421 12491 +0.6% 0.99x (?)
DropLastAnyCollection 5174 5166 -0.2% 1.00x
DropLastAnySeqCRangeIter 40516 40491 -0.1% 1.00x (?)
DropLastAnySeqCRangeIterLazy 40535 40592 +0.1% 1.00x (?)
DropLastAnySeqCntRange 5154 5189 +0.7% 0.99x (?)
DropLastAnySeqCntRangeLazy 5134 5157 +0.4% 1.00x
DropLastAnySequence 30765 30653 -0.4% 1.00x
DropLastAnySequenceLazy 30647 30562 -0.3% 1.00x
DropLastCountableRange 112 108 -3.6% 1.04x
DropLastCountableRangeLazy 11332 11330 -0.0% 1.00x (?)
DropLastSequence 30786 30571 -0.7% 1.01x
DropLastSequenceLazy 30479 30527 +0.2% 1.00x (?)
DropWhileAnyCollection 19868 19903 +0.2% 1.00x
DropWhileAnyCollectionLazy 22466 22433 -0.1% 1.00x
DropWhileAnySeqCRangeIter 24535 24562 +0.1% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 22474 22324 -0.7% 1.01x
DropWhileAnySeqCntRange 19829 19780 -0.2% 1.00x (?)
DropWhileAnySeqCntRangeLazy 22384 22358 -0.1% 1.00x (?)
DropWhileAnySequence 13699 13709 +0.1% 1.00x (?)
DropWhileAnySequenceLazy 12447 12354 -0.7% 1.01x
DropWhileArrayLazy 14176 14294 +0.8% 0.99x
DropWhileCountableRange 4833 4840 +0.1% 1.00x (?)
DropWhileCountableRangeLazy 21911 21911 +0.0% 1.00x
DropWhileSequence 13164 13161 -0.0% 1.00x (?)
DropWhileSequenceLazy 11928 12040 +0.9% 0.99x
EqualStringSubstring 71 71 +0.0% 1.00x
EqualSubstringString 70 67 -4.3% 1.04x
EqualSubstringSubstring 72 72 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 59 59 +0.0% 1.00x
ErrorHandling 6967 6716 -3.6% 1.04x (?)
ExclusivityGlobal 194 197 +1.5% 0.98x
ExclusivityIndependent 74 77 +4.1% 0.96x (?)
FatCompactMap 291678 291530 -0.1% 1.00x (?)
FilterEvenUsingReduce 3624 3633 +0.2% 1.00x (?)
FilterEvenUsingReduceInto 1877 1878 +0.1% 1.00x (?)
FloatingPointPrinting_Double_description_small 24300 24409 +0.4% 1.00x (?)
FloatingPointPrinting_Double_description_uniform 35997 36053 +0.2% 1.00x (?)
FloatingPointPrinting_Double_interpolated 98899 94957 -4.0% 1.04x (?)
FloatingPointPrinting_Float80_description_small 31351 31323 -0.1% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 60549 60594 +0.1% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 121200 118992 -1.8% 1.02x (?)
FloatingPointPrinting_Float_description_small 6476 6724 +3.8% 0.96x
FloatingPointPrinting_Float_description_uniform 17165 17083 -0.5% 1.00x
FloatingPointPrinting_Float_interpolated 79100 80957 +2.3% 0.98x (?)
Hanoi 20249 20309 +0.3% 1.00x (?)
HashTest 21520 21791 +1.3% 0.99x (?)
Histogram 6647 6650 +0.0% 1.00x (?)
Integrate 459 460 +0.2% 1.00x (?)
IterateData 5477 5474 -0.1% 1.00x (?)
Join 781 779 -0.3% 1.00x
LazilyFilteredArrayContains 755541 756648 +0.1% 1.00x (?)
LazilyFilteredArrays 1500322 1494995 -0.4% 1.00x (?)
LazilyFilteredRange 532567 532638 +0.0% 1.00x (?)
LessSubstringSubstring 72 72 +0.0% 1.00x
LessSubstringSubstringGenericComparable 59 59 +0.0% 1.00x
LinkedList 32280 32321 +0.1% 1.00x (?)
LuhnAlgoEager 5602 5559 -0.8% 1.01x (?)
LuhnAlgoLazy 5693 5873 +3.2% 0.97x (?)
MapReduce 25470 25404 -0.3% 1.00x (?)
MapReduceAnyCollection 25505 25439 -0.3% 1.00x
MapReduceAnyCollectionShort 36827 36863 +0.1% 1.00x (?)
MapReduceClass 29604 29557 -0.2% 1.00x
MapReduceClassShort 40618 41016 +1.0% 0.99x (?)
MapReduceLazyCollection 22548 22569 +0.1% 1.00x (?)
MapReduceLazyCollectionShort 33740 32928 -2.4% 1.02x (?)
MapReduceLazySequence 20204 20366 +0.8% 0.99x
MapReduceSequence 30411 30512 +0.3% 1.00x
MapReduceShort 36398 37939 +4.2% 0.96x
MapReduceShortString 242 249 +2.9% 0.97x (?)
MapReduceString 1741 1753 +0.7% 0.99x
Memset 44124 44411 +0.7% 0.99x
MonteCarloE 1152602 1144098 -0.7% 1.01x
MonteCarloPi 5214380 5205767 -0.2% 1.00x (?)
NSDictionaryCastToSwift 6526 6235 -4.5% 1.05x (?)
NSError 625 603 -3.5% 1.04x
NSStringConversion 756 758 +0.3% 1.00x
NibbleSort 500523 495632 -1.0% 1.01x
NopDeinit 202196 201232 -0.5% 1.00x
ObjectAllocation 1342 1294 -3.6% 1.04x (?)
ObjectiveCBridgeFromNSArrayAnyObject 29680 29698 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 9586 9263 -3.4% 1.03x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 48393 49538 +2.4% 0.98x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 121709 122687 +0.8% 0.99x (?)
ObjectiveCBridgeFromNSSetAnyObject 57377 55670 -3.0% 1.03x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 72713 70844 -2.6% 1.03x
ObjectiveCBridgeFromNSStringForced 2775 2816 +1.5% 0.99x (?)
ObjectiveCBridgeStubDataAppend 6316 6412 +1.5% 0.99x (?)
ObjectiveCBridgeStubDateMutation 773 744 -3.8% 1.04x
ObjectiveCBridgeStubFromArrayOfNSString 36845 36492 -1.0% 1.01x (?)
ObjectiveCBridgeStubFromNSString 1085 1078 -0.6% 1.01x (?)
ObjectiveCBridgeStubFromNSStringRef 196 191 -2.6% 1.03x
ObjectiveCBridgeStubNSDataAppend 3017 2957 -2.0% 1.02x (?)
ObjectiveCBridgeStubNSDateMutationRef 16159 16047 -0.7% 1.01x (?)
ObjectiveCBridgeStubToArrayOfNSString 39840 39346 -1.2% 1.01x (?)
ObjectiveCBridgeStubToNSDate 16004 15974 -0.2% 1.00x (?)
ObjectiveCBridgeStubToNSDateRef 3471 3461 -0.3% 1.00x (?)
ObjectiveCBridgeStubToNSString 2416 2418 +0.1% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 154 151 -1.9% 1.02x
ObjectiveCBridgeStubURLAppendPath 304326 312726 +2.8% 0.97x (?)
ObjectiveCBridgeStubURLAppendPathRef 298392 300010 +0.5% 0.99x (?)
ObjectiveCBridgeToNSDictionary 28839 29079 +0.8% 0.99x (?)
ObjectiveCBridgeToNSSet 17633 18355 +4.1% 0.96x (?)
ObjectiveCBridgeToNSString 519 519 +0.0% 1.00x
ObserverClosure 6482 6515 +0.5% 0.99x (?)
ObserverForwarderStruct 4328 4319 -0.2% 1.00x (?)
ObserverPartiallyAppliedMethod 8087 8067 -0.2% 1.00x (?)
ObserverUnappliedMethod 8146 8115 -0.4% 1.00x (?)
OpenClose 883 879 -0.5% 1.00x
PartialApplyDynamicType 39968 39928 -0.1% 1.00x (?)
Phonebook 18884 19132 +1.3% 0.99x
PointerArithmetics 123094 123162 +0.1% 1.00x (?)
PolymorphicCalls 2432 2440 +0.3% 1.00x
PopFrontArray 4655 4619 -0.8% 1.01x (?)
PopFrontArrayGeneric 5373 5372 -0.0% 1.00x (?)
PopFrontUnsafePointer 10742 10670 -0.7% 1.01x
PrefixAnyCollection 15384 15384 +0.0% 1.00x
PrefixAnySeqCRangeIter 18959 18983 +0.1% 1.00x (?)
PrefixAnySeqCRangeIterLazy 18928 18909 -0.1% 1.00x (?)
PrefixAnySeqCntRange 15433 15423 -0.1% 1.00x (?)
PrefixAnySeqCntRangeLazy 15409 15332 -0.5% 1.01x (?)
PrefixAnySequence 10435 10475 +0.4% 1.00x (?)
PrefixAnySequenceLazy 10509 10678 +1.6% 0.98x
PrefixArray 3386 3396 +0.3% 1.00x
PrefixArrayLazy 29244 29263 +0.1% 1.00x (?)
PrefixCountableRange 323 310 -4.0% 1.04x
PrefixCountableRangeLazy 34128 34148 +0.1% 1.00x (?)
PrefixSequence 10083 10131 +0.5% 1.00x (?)
PrefixSequenceLazy 9968 10021 +0.5% 0.99x (?)
PrefixWhileAnyCollection 28804 28792 -0.0% 1.00x (?)
PrefixWhileAnyCollectionLazy 18641 18409 -1.2% 1.01x (?)
PrefixWhileAnySeqCRangeIter 34336 34255 -0.2% 1.00x
PrefixWhileAnySeqCRangeIterLazy 18300 18306 +0.0% 1.00x (?)
PrefixWhileAnySeqCntRange 28687 28652 -0.1% 1.00x (?)
PrefixWhileAnySeqCntRangeLazy 18353 18361 +0.0% 1.00x (?)
PrefixWhileAnySequence 26642 26706 +0.2% 1.00x (?)
PrefixWhileAnySequenceLazy 10965 10957 -0.1% 1.00x (?)
PrefixWhileArray 10615 10518 -0.9% 1.01x (?)
PrefixWhileArrayLazy 12467 12437 -0.2% 1.00x
PrefixWhileCountableRange 13769 13748 -0.2% 1.00x
PrefixWhileCountableRangeLazy 18045 18033 -0.1% 1.00x (?)
PrefixWhileSequence 26446 26487 +0.2% 1.00x (?)
PrefixWhileSequenceLazy 10764 10871 +1.0% 0.99x
Prims 9554 9470 -0.9% 1.01x (?)
PrimsSplit 9422 9630 +2.2% 0.98x (?)
QueueConcrete 14408 14410 +0.0% 1.00x (?)
QueueGeneric 19121 19212 +0.5% 1.00x (?)
RC4 15960 15985 +0.2% 1.00x
RGBHistogram 24649 24515 -0.5% 1.01x
RGBHistogramOfObjects 80644 78531 -2.6% 1.03x (?)
RangeAssignment 2616 2595 -0.8% 1.01x (?)
RangeIterationSigned 14834 14946 +0.8% 0.99x
RangeReplaceableCollectionPlusDefault 11345 11083 -2.3% 1.02x (?)
RecursiveOwnedParameter 5822 5797 -0.4% 1.00x (?)
RemoveWhereFilterInts 1968 1964 -0.2% 1.00x (?)
RemoveWhereFilterString 1287 1286 -0.1% 1.00x (?)
RemoveWhereFilterStrings 2460 2467 +0.3% 1.00x (?)
RemoveWhereMoveInts 3479 3547 +2.0% 0.98x (?)
RemoveWhereMoveStrings 4071 4076 +0.1% 1.00x (?)
RemoveWhereQuadraticInts 8032 8044 +0.1% 1.00x (?)
RemoveWhereQuadraticString 2289 2339 +2.2% 0.98x (?)
RemoveWhereQuadraticStrings 9773 9799 +0.3% 1.00x (?)
RemoveWhereSwapInts 6283 6277 -0.1% 1.00x (?)
RemoveWhereSwapStrings 7004 6989 -0.2% 1.00x (?)
ReversedArray 12988 13154 +1.3% 0.99x (?)
ReversedBidirectional 43702 44445 +1.7% 0.98x (?)
ReversedDictionary 23545 23513 -0.1% 1.00x (?)
RomanNumbers 1282528 1280078 -0.2% 1.00x (?)
SequenceAlgosAnySequence 12961 12967 +0.0% 1.00x (?)
SequenceAlgosArray 761582 762156 +0.1% 1.00x (?)
SequenceAlgosContiguousArray 292193 292432 +0.1% 1.00x (?)
SequenceAlgosList 8683 8692 +0.1% 1.00x (?)
SequenceAlgosRange 1270002 1268608 -0.1% 1.00x (?)
SequenceAlgosUnfoldSequence 6481 6467 -0.2% 1.00x
SetExclusiveOr 16305 16364 +0.4% 1.00x (?)
SetExclusiveOr_OfObjects 41647 41431 -0.5% 1.01x (?)
SetIntersect 6585 6571 -0.2% 1.00x (?)
SetIntersect_OfObjects 10270 10289 +0.2% 1.00x (?)
SetIsSubsetOf 1198 1194 -0.3% 1.00x
SetIsSubsetOf_OfObjects 2245 2335 +4.0% 0.96x (?)
SetUnion 11823 11833 +0.1% 1.00x (?)
SetUnion_OfObjects 30072 30463 +1.3% 0.99x (?)
Sim2DArray 43486 43427 -0.1% 1.00x
SortLargeExistentials 11770 11744 -0.2% 1.00x
SortLettersInPlace 1978 1969 -0.5% 1.00x (?)
SortSortedStrings 1144 1134 -0.9% 1.01x
SortStringsUnicode 2822 2712 -3.9% 1.04x
StackPromo 100567 101047 +0.5% 1.00x (?)
StaticArray 2586 2542 -1.7% 1.02x
StrComplexWalk 6837 6839 +0.0% 1.00x
StrToInt 79641 83257 +4.5% 0.96x (?)
StringAdder 1167 1172 +0.4% 1.00x
StringBuilder 5876 5896 +0.3% 1.00x (?)
StringBuilderLong 2927 2935 +0.3% 1.00x (?)
StringBuilderWithLongSubstring 4810 4800 -0.2% 1.00x (?)
StringComparison_abnormal 1306 1328 +1.7% 0.98x (?)
StringComparison_ascii 9553 9447 -1.1% 1.01x (?)
StringComparison_emoji 1998 2002 +0.2% 1.00x
StringComparison_fastPrenormal 4921 4937 +0.3% 1.00x (?)
StringComparison_longSharedPrefix 2493 2400 -3.7% 1.04x
StringComparison_nonBMPSlowestPrenormal 3698 3716 +0.5% 1.00x (?)
StringComparison_slowerPrenormal 4178 4196 +0.4% 1.00x (?)
StringComparison_zalgo 127409 127545 +0.1% 1.00x (?)
StringEdits 398127 413920 +4.0% 0.96x (?)
StringEnumRawValueInitialization 32689 32756 +0.2% 1.00x (?)
StringEqualPointerComparison 1619 1626 +0.4% 1.00x
StringFromLongWholeSubstring 12 12 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 201 201 +0.0% 1.00x
StringHasPrefixAscii 3067 3066 -0.0% 1.00x
StringHasPrefixUnicode 116000 116033 +0.0% 1.00x (?)
StringHasSuffixAscii 3179 3204 +0.8% 0.99x
StringHasSuffixUnicode 106576 106166 -0.4% 1.00x (?)
StringInterpolation 12012 12196 +1.5% 0.98x (?)
StringInterpolationManySmallSegments 21227 21408 +0.9% 0.99x (?)
StringInterpolationSmall 8722 8504 -2.5% 1.03x (?)
StringMatch 40463 40434 -0.1% 1.00x (?)
StringRemoveDupes 711 710 -0.1% 1.00x (?)
StringUTF16Builder 8279 8359 +1.0% 0.99x (?)
StringWalk 13511 13147 -2.7% 1.03x
StringWithCString 45217 45245 +0.1% 1.00x (?)
StringWordBuilder 2732 2692 -1.5% 1.01x
StringWordBuilderReservingCapacity 2098 2017 -3.9% 1.04x
SubstringComparable 1659 1660 +0.1% 1.00x (?)
SubstringEqualString 1723 1717 -0.3% 1.00x (?)
SubstringEquatable 5437 5437 +0.0% 1.00x
SubstringFromLongString 18 18 +0.0% 1.00x
SubstringFromLongStringGeneric 107 106 -0.9% 1.01x
SuffixAnyCollection 5158 5162 +0.1% 1.00x (?)
SuffixAnyCollectionLazy 34736 35565 +2.4% 0.98x (?)
SuffixAnySeqCRangeIter 36306 36308 +0.0% 1.00x (?)
SuffixAnySeqCRangeIterLazy 36477 36419 -0.2% 1.00x (?)
SuffixAnySeqCntRange 5152 5176 +0.5% 1.00x
SuffixAnySeqCntRangeLazy 5132 5125 -0.1% 1.00x (?)
SuffixAnySequence 26504 26572 +0.3% 1.00x (?)
SuffixAnySequenceLazy 26773 26681 -0.3% 1.00x (?)
SuffixCountableRange 112 108 -3.6% 1.04x
SuffixCountableRangeLazy 11372 11399 +0.2% 1.00x
SuffixSequence 26352 26471 +0.5% 1.00x
SuffixSequenceLazy 26589 26542 -0.2% 1.00x (?)
SumUsingReduce 159969 161926 +1.2% 0.99x (?)
SumUsingReduceInto 153818 154044 +0.1% 1.00x (?)
SuperChars 86261 86424 +0.2% 1.00x (?)
TwoSum 3488 3548 +1.7% 0.98x
UTF8Decode 29818 29742 -0.3% 1.00x (?)
Walsh 11934 11916 -0.2% 1.00x (?)
WordCountHistogramASCII 38751 38546 -0.5% 1.01x (?)
WordCountHistogramUTF16 45963 46070 +0.2% 1.00x (?)
WordCountUniqueASCII 7196 7194 -0.0% 1.00x (?)
WordCountUniqueUTF16 13018 12989 -0.2% 1.00x (?)
WordSplitASCII 9788 10289 +5.1% 0.95x
WordSplitUTF16 12410 11995 -3.3% 1.03x (?)
XorLoop 23221 23225 +0.0% 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: 16 GB

@@ -361,7 +361,7 @@ extension Unsafe${Mutable}BufferPointer: ${Mutable}Collection, RandomAccessColle
let pj = (_position! + j)
let tmp = pi.move()
pi.moveInitialize(from: pj, count: 1)
pj.initialize(to: tmp, count: 1)
pj.initialize(repeating: tmp, count: 1)
Copy link
Contributor

Choose a reason for hiding this comment

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

I think the right fix would be initialize(to: tmp).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

thanks, I changed it

…r.swapAt with the new one.

This brings back performance on stdlib sort because the obsoleted function in UnsafePointer is not inlinable.
@eeckstein
Copy link
Contributor Author

@swift-ci smoke test

@airspeedswift airspeedswift merged commit c2cc3ee into swiftlang:master May 1, 2018
@eeckstein eeckstein deleted the fix-swapat branch May 1, 2018 17:50
eeckstein added a commit to eeckstein/swift that referenced this pull request May 3, 2018
…r.swapAt with the new one. (swiftlang#16270)

This brings back performance on stdlib sort because the obsoleted function in UnsafePointer is not inlinable.
eeckstein added a commit to eeckstein/swift that referenced this pull request May 4, 2018
…r.swapAt with the new one. (swiftlang#16270)

This brings back performance on stdlib sort because the obsoleted function in UnsafePointer is not inlinable.
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