Skip to content

[stdlib] Random unification #16399

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

Closed
wants to merge 0 commits into from
Closed

Conversation

Azoy
Copy link
Contributor

@Azoy Azoy commented May 4, 2018

This is the implementation for swiftlang/swift-evolution#760

@Azoy Azoy changed the title Random unification [stdlib] Random unification May 4, 2018
@Azoy
Copy link
Contributor Author

Azoy commented May 4, 2018

cc: @airspeedswift Nate had an idea in the previous PR to constrain the shuffle implementation for MutableCollection to RandomAccessCollection due to complexity issues MutableCollection could have.

extension MutableCollection where Self: RandomAccessCollection {}

@airspeedswift
Copy link
Member

@swift-ci please test

@airspeedswift
Copy link
Member

@swift-ci please smoke benchmark

@airspeedswift
Copy link
Member

@Azoy can you rebase? Looks like you're still based off of a November master. Also if you could squash incremental commits if they were just changing the implementation from feedback. Thanks!

@swift-ci
Copy link
Contributor

swift-ci commented May 4, 2018

Build comment file:

Optimized (O)

Regression (15)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3724 4170 +12.0% 0.89x
StringBuilderLong 2780 3070 +10.4% 0.91x
ObjectiveCBridgeFromNSDictionaryAnyObject 114321 124925 +9.3% 0.92x
SuffixCountableRange 11 12 +9.1% 0.92x
PopFrontUnsafePointer 8771 9520 +8.5% 0.92x (?)
StringUTF16SubstringBuilder 5864 6327 +7.9% 0.93x
StringInterpolation 9884 10648 +7.7% 0.93x
WordSplitUTF16 8668 9322 +7.5% 0.93x
ObjectiveCBridgeFromNSSetAnyObjectForced 5442 5849 +7.5% 0.93x (?)
IterateData 1821 1952 +7.2% 0.93x
LazilyFilteredArrayContains 35480 37865 +6.7% 0.94x
DictionaryBridge 1207 1284 +6.4% 0.94x (?)
FloatingPointPrinting_Double_interpolated 66908 71130 +6.3% 0.94x (?)
OpenClose 272 287 +5.5% 0.95x
ObjectiveCBridgeToNSDictionary 26323 27760 +5.5% 0.95x
Improvement (19)
TEST OLD NEW DELTA SPEEDUP
ObjectiveCBridgeStubFromNSDate 8181 6084 -25.6% 1.34x (?)
CharIteration_tweet_unicodeScalars 45858 40049 -12.7% 1.15x
CharIteration_russian_unicodeScalars 19370 17014 -12.2% 1.14x
CharIteration_ascii_unicodeScalars 23209 20395 -12.1% 1.14x
CharIteration_chinese_unicodeScalars 17581 15452 -12.1% 1.14x
CharIteration_korean_unicodeScalars 22514 19800 -12.1% 1.14x
CharIteration_japanese_unicodeScalars 27784 24471 -11.9% 1.14x
CharIteration_punctuated_unicodeScalars 5183 4590 -11.4% 1.13x
CharIteration_punctuatedJapanese_unicodeScalars 4118 3658 -11.2% 1.13x
DataReplaceMediumBuffer 15846 14578 -8.0% 1.09x (?)
DataReplaceMedium 12768 11757 -7.9% 1.09x
ObjectiveCBridgeStubFromArrayOfNSString 36265 33569 -7.4% 1.08x (?)
PopFrontArray 1966 1830 -6.9% 1.07x (?)
DropFirstSequence 2890 2693 -6.8% 1.07x
ObjectiveCBridgeToNSArray 16118 15109 -6.3% 1.07x
ObjectiveCBridgeFromNSArrayAnyObjectToString 48980 45918 -6.3% 1.07x (?)
ObjectiveCBridgeFromNSSetAnyObject 55717 52686 -5.4% 1.06x (?)
DropWhileSequence 2339 2223 -5.0% 1.05x
ObjectiveCBridgeFromNSArrayAnyObjectForced 4992 4748 -4.9% 1.05x (?)
No Changes (393)
TEST OLD NEW DELTA SPEEDUP
AnyHashableWithAClass 84561 84673 +0.1% 1.00x
Array2D 2856 2818 -1.3% 1.01x (?)
ArrayAppend 1068 1074 +0.6% 0.99x
ArrayAppendArrayOfInt 800 800 +0.0% 1.00x
ArrayAppendAscii 4038 4000 -0.9% 1.01x (?)
ArrayAppendAsciiSubstring 154034 157856 +2.5% 0.98x
ArrayAppendFromGeneric 799 801 +0.3% 1.00x (?)
ArrayAppendGenericStructs 1426 1425 -0.1% 1.00x (?)
ArrayAppendLatin1 40008 40089 +0.2% 1.00x (?)
ArrayAppendLatin1Substring 282868 293842 +3.9% 0.96x
ArrayAppendLazyMap 1343 1342 -0.1% 1.00x (?)
ArrayAppendOptionals 1427 1431 +0.3% 1.00x (?)
ArrayAppendRepeatCol 1340 1343 +0.2% 1.00x (?)
ArrayAppendReserved 797 805 +1.0% 0.99x
ArrayAppendSequence 1120 1121 +0.1% 1.00x (?)
ArrayAppendStrings 6221 6340 +1.9% 0.98x
ArrayAppendToFromGeneric 796 800 +0.5% 1.00x (?)
ArrayAppendToGeneric 796 798 +0.3% 1.00x (?)
ArrayAppendUTF16 40030 39392 -1.6% 1.02x
ArrayAppendUTF16Substring 285553 295015 +3.3% 0.97x
ArrayInClass 85 86 +1.2% 0.99x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 151 151 +0.0% 1.00x
ArrayOfGenericRef 4396 4381 -0.3% 1.00x (?)
ArrayOfPOD 184 184 +0.0% 1.00x
ArrayOfRef 4358 4392 +0.8% 0.99x
ArrayPlusEqualArrayOfInt 797 798 +0.1% 1.00x (?)
ArrayPlusEqualFiveElementCollection 5453 5424 -0.5% 1.01x
ArrayPlusEqualSingleElementCollection 1069 1062 -0.7% 1.01x (?)
ArrayPlusEqualThreeElements 1651 1659 +0.5% 1.00x
ArraySubscript 1525 1554 +1.9% 0.98x
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
BinaryFloatingPointPropertiesBinade 31 31 +0.0% 1.00x
BinaryFloatingPointPropertiesNextUp 28 28 +0.0% 1.00x
BinaryFloatingPointPropertiesUlp 37 37 +0.0% 1.00x
BitCount 211 211 +0.0% 1.00x
ByteSwap 105 104 -1.0% 1.01x (?)
COWTree 5400 5456 +1.0% 0.99x (?)
CSVParsing 726888 726853 -0.0% 1.00x (?)
CSVParsingAlt 799559 792887 -0.8% 1.01x
CSVParsingAltIndices 343300 342481 -0.2% 1.00x (?)
CStringLongAscii 4642 4688 +1.0% 0.99x (?)
CStringLongNonAscii 2188 2174 -0.6% 1.01x (?)
CStringShortAscii 3176 3190 +0.4% 1.00x (?)
Calculator 1126 1173 +4.2% 0.96x
CaptureProp 4122 4102 -0.5% 1.00x (?)
ChainedFilterMap 1407 1410 +0.2% 1.00x
CharIndexing_ascii_unicodeScalars 16079 16254 +1.1% 0.99x
CharIndexing_ascii_unicodeScalars_Backwards 16342 16565 +1.4% 0.99x
CharIndexing_chinese_unicodeScalars 12200 12349 +1.2% 0.99x
CharIndexing_chinese_unicodeScalars_Backwards 12355 12500 +1.2% 0.99x
CharIndexing_japanese_unicodeScalars 19255 19478 +1.2% 0.99x
CharIndexing_japanese_unicodeScalars_Backwards 19554 19805 +1.3% 0.99x
CharIndexing_korean_unicodeScalars 15602 15787 +1.2% 0.99x
CharIndexing_korean_unicodeScalars_Backwards 15806 16050 +1.5% 0.98x
CharIndexing_punctuatedJapanese_unicodeScalars 2927 2960 +1.1% 0.99x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2966 2994 +0.9% 0.99x
CharIndexing_punctuated_unicodeScalars 3655 3701 +1.3% 0.99x
CharIndexing_punctuated_unicodeScalars_Backwards 3713 3746 +0.9% 0.99x (?)
CharIndexing_russian_unicodeScalars 13415 13548 +1.0% 0.99x (?)
CharIndexing_russian_unicodeScalars_Backwards 13606 13796 +1.4% 0.99x
CharIndexing_tweet_unicodeScalars 31725 32069 +1.1% 0.99x
CharIndexing_tweet_unicodeScalars_Backwards 32427 32413 -0.0% 1.00x (?)
CharIndexing_utf16_unicodeScalars 22821 22857 +0.2% 1.00x
CharIndexing_utf16_unicodeScalars_Backwards 23649 23649 +0.0% 1.00x
CharIteration_ascii_unicodeScalars_Backwards 15147 15350 +1.3% 0.99x
CharIteration_chinese_unicodeScalars_Backwards 11478 11636 +1.4% 0.99x
CharIteration_japanese_unicodeScalars_Backwards 18137 18388 +1.4% 0.99x
CharIteration_korean_unicodeScalars_Backwards 14687 14888 +1.4% 0.99x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2748 2791 +1.6% 0.98x
CharIteration_punctuated_unicodeScalars_Backwards 3436 3484 +1.4% 0.99x
CharIteration_russian_unicodeScalars_Backwards 12626 12807 +1.4% 0.99x
CharIteration_tweet_unicodeScalars_Backwards 29982 30433 +1.5% 0.99x
CharIteration_utf16_unicodeScalars 28399 27628 -2.7% 1.03x
CharIteration_utf16_unicodeScalars_Backwards 18862 18748 -0.6% 1.01x
CharacterLiteralsLarge 5795 5874 +1.4% 0.99x
CharacterLiteralsSmall 220 220 +0.0% 1.00x
CharacterPropertiesFetch 4593 4584 -0.2% 1.00x (?)
CharacterPropertiesPrecomputed 1127 1116 -1.0% 1.01x
CharacterPropertiesStashed 1489 1496 +0.5% 1.00x (?)
CharacterPropertiesStashedMemo 1580 1596 +1.0% 0.99x (?)
Chars 1216 1217 +0.1% 1.00x
ClassArrayGetter 15 15 +0.0% 1.00x
Combos 498 511 +2.6% 0.97x
DataAccessBytes 1238 1228 -0.8% 1.01x
DataAppendArray 6342 6175 -2.6% 1.03x
DataAppendBytes 5914 5840 -1.3% 1.01x (?)
DataAppendDataLargeToLarge 69953 69970 +0.0% 1.00x (?)
DataAppendDataLargeToMedium 36412 36789 +1.0% 0.99x (?)
DataAppendDataLargeToSmall 35705 35894 +0.5% 0.99x (?)
DataAppendDataMediumToLarge 39306 39258 -0.1% 1.00x (?)
DataAppendDataMediumToMedium 8150 8277 +1.6% 0.98x (?)
DataAppendDataMediumToSmall 7381 7345 -0.5% 1.00x (?)
DataAppendDataSmallToLarge 38454 38370 -0.2% 1.00x (?)
DataAppendDataSmallToMedium 8105 7847 -3.2% 1.03x (?)
DataAppendDataSmallToSmall 7329 7264 -0.9% 1.01x (?)
DataAppendSequence 21092 20998 -0.4% 1.00x (?)
DataCopyBytes 2544 2512 -1.3% 1.01x (?)
DataCount 37 37 +0.0% 1.00x
DataMutateBytes 4408 4322 -2.0% 1.02x (?)
DataReplaceLarge 41477 40549 -2.2% 1.02x (?)
DataReplaceLargeBuffer 61066 60156 -1.5% 1.02x (?)
DataReplaceSmall 9056 8967 -1.0% 1.01x (?)
DataReplaceSmallBuffer 12346 11802 -4.4% 1.05x (?)
DataReset 3202 3253 +1.6% 0.98x (?)
DataSetCount 920 908 -1.3% 1.01x
DataSubscript 240 237 -1.2% 1.01x
DictOfArraysToArrayOfDicts 810 824 +1.7% 0.98x (?)
Dictionary 693 691 -0.3% 1.00x (?)
Dictionary2 815 821 +0.7% 0.99x
Dictionary2OfObjects 2227 2224 -0.1% 1.00x (?)
Dictionary3 252 257 +2.0% 0.98x (?)
Dictionary3OfObjects 769 771 +0.3% 1.00x (?)
Dictionary4 343 338 -1.5% 1.01x
Dictionary4Legacy 724 731 +1.0% 0.99x
Dictionary4OfObjects 455 454 -0.2% 1.00x
Dictionary4OfObjectsLegacy 935 937 +0.2% 1.00x (?)
DictionaryCopy 107027 107173 +0.1% 1.00x (?)
DictionaryFilter 106385 106913 +0.5% 1.00x
DictionaryGroup 218 218 +0.0% 1.00x
DictionaryGroupOfObjects 2119 2131 +0.6% 0.99x
DictionaryLiteral 1926 1960 +1.8% 0.98x (?)
DictionaryOfObjects 2533 2544 +0.4% 1.00x (?)
DictionaryRemove 4189 4200 +0.3% 1.00x (?)
DictionaryRemoveOfObjects 26066 25962 -0.4% 1.00x
DictionarySubscriptDefaultMutation 266 268 +0.8% 0.99x
DictionarySubscriptDefaultMutationArray 625 621 -0.6% 1.01x
DictionarySubscriptDefaultMutationArrayOfObjects 4024 4020 -0.1% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 1720 1736 +0.9% 0.99x (?)
DictionarySwap 1042 1039 -0.3% 1.00x (?)
DictionarySwapAt 6740 6676 -0.9% 1.01x (?)
DictionarySwapAtOfObjects 52657 52330 -0.6% 1.01x (?)
DictionarySwapOfObjects 8725 8689 -0.4% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 84 84 +0.0% 1.00x
DropFirstAnyCollectionLazy 62768 62442 -0.5% 1.01x (?)
DropFirstAnySeqCRangeIter 21457 21132 -1.5% 1.02x
DropFirstAnySeqCRangeIterLazy 21499 21115 -1.8% 1.02x
DropFirstAnySeqCntRange 41 41 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 41 41 +0.0% 1.00x
DropFirstAnySequence 4962 4992 +0.6% 0.99x
DropFirstAnySequenceLazy 4960 4990 +0.6% 0.99x
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
DropFirstSequenceLazy 2798 2817 +0.7% 0.99x (?)
DropLastAnyCollection 30 31 +3.3% 0.97x
DropLastAnyCollectionLazy 20825 20771 -0.3% 1.00x (?)
DropLastAnySeqCRangeIter 3679 3671 -0.2% 1.00x (?)
DropLastAnySeqCRangeIterLazy 3681 3669 -0.3% 1.00x (?)
DropLastAnySeqCntRange 13 13 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 13 13 +0.0% 1.00x
DropLastAnySequence 5233 5048 -3.5% 1.04x
DropLastAnySequenceLazy 5353 5148 -3.8% 1.04x
DropLastCountableRange 11 11 +0.0% 1.00x
DropLastCountableRangeLazy 12 12 +0.0% 1.00x
DropLastSequence 639 627 -1.9% 1.02x
DropLastSequenceLazy 633 627 -0.9% 1.01x
DropWhileAnyCollection 107 107 +0.0% 1.00x
DropWhileAnyCollectionLazy 125 125 +0.0% 1.00x
DropWhileAnySeqCRangeIter 16831 16693 -0.8% 1.01x
DropWhileAnySeqCRangeIterLazy 125 125 +0.0% 1.00x
DropWhileAnySeqCntRange 50 50 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 125 125 +0.0% 1.00x
DropWhileAnySequence 4862 4859 -0.1% 1.00x (?)
DropWhileAnySequenceLazy 1857 1858 +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
DropWhileSequenceLazy 88 88 +0.0% 1.00x
EqualStringSubstring 55 56 +1.8% 0.98x
EqualSubstringString 64 65 +1.6% 0.98x
EqualSubstringSubstring 48 49 +2.1% 0.98x
EqualSubstringSubstringGenericEquatable 48 49 +2.1% 0.98x
ErrorHandling 1505 1504 -0.1% 1.00x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FatCompactMap 203579 204914 +0.7% 0.99x
FilterEvenUsingReduce 1316 1304 -0.9% 1.01x
FilterEvenUsingReduceInto 147 147 +0.0% 1.00x
FloatingPointPrinting_Double_description_small 23613 23661 +0.2% 1.00x (?)
FloatingPointPrinting_Double_description_uniform 23297 23008 -1.2% 1.01x
FloatingPointPrinting_Float80_description_small 30739 30838 +0.3% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 29689 29747 +0.2% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 70305 71579 +1.8% 0.98x
FloatingPointPrinting_Float_description_small 5169 5254 +1.6% 0.98x
FloatingPointPrinting_Float_description_uniform 4963 5094 +2.6% 0.97x
FloatingPointPrinting_Float_interpolated 42383 43189 +1.9% 0.98x
FrequenciesUsingReduce 4936 5134 +4.0% 0.96x
FrequenciesUsingReduceInto 1555 1586 +2.0% 0.98x (?)
Hanoi 2179 2212 +1.5% 0.99x
HashTest 1039 1058 +1.8% 0.98x
Histogram 714 711 -0.4% 1.00x (?)
Integrate 335 335 +0.0% 1.00x
Join 180 181 +0.6% 0.99x (?)
LazilyFilteredArrays 65954 65013 -1.4% 1.01x (?)
LazilyFilteredRange 3876 3879 +0.1% 1.00x (?)
LessSubstringSubstring 48 49 +2.1% 0.98x
LessSubstringSubstringGenericComparable 48 49 +2.1% 0.98x
LinkedList 7560 7606 +0.6% 0.99x
LuhnAlgoEager 323 325 +0.6% 0.99x (?)
LuhnAlgoLazy 322 322 +0.0% 1.00x
MapReduce 399 400 +0.3% 1.00x (?)
MapReduceAnyCollection 429 429 +0.0% 1.00x
MapReduceAnyCollectionShort 2245 2268 +1.0% 0.99x
MapReduceClass 3032 3014 -0.6% 1.01x
MapReduceClassShort 4567 4556 -0.2% 1.00x
MapReduceLazyCollection 13 13 +0.0% 1.00x
MapReduceLazyCollectionShort 37 37 +0.0% 1.00x
MapReduceLazySequence 86 86 +0.0% 1.00x
MapReduceSequence 449 443 -1.3% 1.01x (?)
MapReduceShort 2005 1999 -0.3% 1.00x (?)
MapReduceShortString 30 30 +0.0% 1.00x
MapReduceString 79 79 +0.0% 1.00x
Memset 217 215 -0.9% 1.01x (?)
MonteCarloE 10230 10213 -0.2% 1.00x (?)
MonteCarloPi 42666 42698 +0.1% 1.00x (?)
NSDictionaryCastToSwift 7371 7162 -2.8% 1.03x (?)
NSError 173 174 +0.6% 0.99x (?)
NSStringConversion 724 743 +2.6% 0.97x
NibbleSort 3671 3671 +0.0% 1.00x
NopDeinit 32350 32190 -0.5% 1.00x
ObjectAllocation 134 132 -1.5% 1.02x
ObjectiveCBridgeFromNSArrayAnyObject 25028 25330 +1.2% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 44763 44491 -0.6% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 66952 66409 -0.8% 1.01x (?)
ObjectiveCBridgeFromNSString 1220 1197 -1.9% 1.02x
ObjectiveCBridgeFromNSStringForced 2670 2657 -0.5% 1.00x (?)
ObjectiveCBridgeStubDataAppend 11596 11547 -0.4% 1.00x (?)
ObjectiveCBridgeStubDateMutation 401 404 +0.7% 0.99x
ObjectiveCBridgeStubFromNSString 1042 1034 -0.8% 1.01x
ObjectiveCBridgeStubFromNSStringRef 164 164 +0.0% 1.00x
ObjectiveCBridgeStubNSDataAppend 2593 2644 +2.0% 0.98x
ObjectiveCBridgeStubNSDateMutationRef 13152 13423 +2.1% 0.98x (?)
ObjectiveCBridgeStubToArrayOfNSString 39578 39508 -0.2% 1.00x (?)
ObjectiveCBridgeStubToNSDate 15467 15753 +1.8% 0.98x (?)
ObjectiveCBridgeStubToNSDateRef 3431 3454 +0.7% 0.99x (?)
ObjectiveCBridgeStubToNSString 2402 2378 -1.0% 1.01x
ObjectiveCBridgeStubToNSStringRef 122 121 -0.8% 1.01x
ObjectiveCBridgeStubURLAppendPath 287658 287700 +0.0% 1.00x (?)
ObjectiveCBridgeStubURLAppendPathRef 294887 283445 -3.9% 1.04x (?)
ObjectiveCBridgeToNSSet 17360 17514 +0.9% 0.99x (?)
ObjectiveCBridgeToNSString 490 492 +0.4% 1.00x
ObserverClosure 2165 2170 +0.2% 1.00x (?)
ObserverForwarderStruct 1261 1254 -0.6% 1.01x (?)
ObserverPartiallyAppliedMethod 3745 3740 -0.1% 1.00x (?)
ObserverUnappliedMethod 2604 2617 +0.5% 1.00x (?)
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 4759 4849 +1.9% 0.98x
PointerArithmetics 34359 34367 +0.0% 1.00x (?)
PolymorphicCalls 25 25 +0.0% 1.00x
PopFrontArrayGeneric 1976 1971 -0.3% 1.00x (?)
PrefixAnyCollection 84 84 +0.0% 1.00x
PrefixAnyCollectionLazy 62272 62426 +0.2% 1.00x (?)
PrefixAnySeqCRangeIter 16649 16522 -0.8% 1.01x
PrefixAnySeqCRangeIterLazy 16638 16533 -0.6% 1.01x
PrefixAnySeqCntRange 28 28 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 28 28 +0.0% 1.00x
PrefixAnySequence 4357 4377 +0.5% 1.00x (?)
PrefixAnySequenceLazy 4360 4431 +1.6% 0.98x
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 2229 2238 +0.4% 1.00x
PrefixSequenceLazy 2277 2276 -0.0% 1.00x
PrefixWhileAnyCollection 154 154 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 90 90 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 9142 8992 -1.6% 1.02x
PrefixWhileAnySeqCRangeIterLazy 72 72 +0.0% 1.00x
PrefixWhileAnySeqCntRange 59 59 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 90 90 +0.0% 1.00x
PrefixWhileAnySequence 10250 10247 -0.0% 1.00x (?)
PrefixWhileAnySequenceLazy 1393 1394 +0.1% 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 362 +0.3% 1.00x (?)
PrefixWhileSequenceLazy 52 52 +0.0% 1.00x
Prims 915 911 -0.4% 1.00x (?)
PrimsSplit 910 901 -1.0% 1.01x (?)
QueueConcrete 1149 1150 +0.1% 1.00x (?)
QueueGeneric 1148 1152 +0.3% 1.00x (?)
RC4 150 149 -0.7% 1.01x
RGBHistogram 3204 3202 -0.1% 1.00x (?)
RGBHistogramOfObjects 23822 23796 -0.1% 1.00x (?)
RangeAssignment 338 336 -0.6% 1.01x (?)
RangeIterationSigned 171 171 +0.0% 1.00x
RangeReplaceableCollectionPlusDefault 1008 1021 +1.3% 0.99x
RecursiveOwnedParameter 115 115 +0.0% 1.00x
RemoveWhereFilterInts 47 47 +0.0% 1.00x
RemoveWhereFilterString 213 210 -1.4% 1.01x
RemoveWhereFilterStrings 437 437 +0.0% 1.00x
RemoveWhereMoveInts 15 15 +0.0% 1.00x
RemoveWhereMoveStrings 708 709 +0.1% 1.00x (?)
RemoveWhereQuadraticInts 1289 1292 +0.2% 1.00x (?)
RemoveWhereQuadraticString 358 358 +0.0% 1.00x
RemoveWhereQuadraticStrings 2755 2759 +0.1% 1.00x (?)
RemoveWhereSwapInts 19 19 +0.0% 1.00x
RemoveWhereSwapStrings 860 860 +0.0% 1.00x
ReversedArray 58 57 -1.7% 1.02x
ReversedBidirectional 16648 16519 -0.8% 1.01x
ReversedDictionary 267 267 +0.0% 1.00x
RomanNumbers 91309 92352 +1.1% 0.99x
SequenceAlgosAnySequence 12010 11691 -2.7% 1.03x
SequenceAlgosArray 1581 1583 +0.1% 1.00x (?)
SequenceAlgosContiguousArray 1581 1580 -0.1% 1.00x (?)
SequenceAlgosList 1350 1355 +0.4% 1.00x
SequenceAlgosRange 2595 2578 -0.7% 1.01x
SequenceAlgosUnfoldSequence 1102 1102 +0.0% 1.00x
SetExclusiveOr 5169 5199 +0.6% 0.99x (?)
SetExclusiveOr_OfObjects 11858 11761 -0.8% 1.01x
SetIntersect 701 704 +0.4% 1.00x (?)
SetIntersect_OfObjects 1657 1668 +0.7% 0.99x (?)
SetIsSubsetOf 354 357 +0.8% 0.99x
SetIsSubsetOf_OfObjects 450 450 +0.0% 1.00x
SetUnion 4543 4571 +0.6% 0.99x
SetUnion_OfObjects 10198 10159 -0.4% 1.00x
SevenBoom 890 885 -0.6% 1.01x (?)
Sim2DArray 417 417 +0.0% 1.00x
SortLargeExistentials 6190 6239 +0.8% 0.99x
SortLettersInPlace 1043 1043 +0.0% 1.00x
SortSortedStrings 1006 1029 +2.3% 0.98x
SortStrings 1988 2026 +1.9% 0.98x
SortStringsUnicode 2452 2547 +3.9% 0.96x
StackPromo 25282 25208 -0.3% 1.00x (?)
StaticArray 9 9 +0.0% 1.00x
StrComplexWalk 1784 1785 +0.1% 1.00x
StrToInt 3178 3212 +1.1% 0.99x
StringAdder 713 736 +3.2% 0.97x
StringBuilder 665 654 -1.7% 1.02x
StringBuilderWithLongSubstring 1468 1490 +1.5% 0.99x (?)
StringComparison_abnormal 792 800 +1.0% 0.99x
StringComparison_ascii 1283 1316 +2.6% 0.97x
StringComparison_emoji 811 804 -0.9% 1.01x
StringComparison_fastPrenormal 797 824 +3.4% 0.97x
StringComparison_latin1 630 651 +3.3% 0.97x
StringComparison_longSharedPrefix 928 929 +0.1% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 1580 1580 +0.0% 1.00x
StringComparison_slowerPrenormal 1726 1664 -3.6% 1.04x
StringComparison_zalgo 125126 125520 +0.3% 1.00x (?)
StringEdits 171500 169664 -1.1% 1.01x (?)
StringEnumRawValueInitialization 929 929 +0.0% 1.00x
StringEqualPointerComparison 305 304 -0.3% 1.00x
StringFromLongWholeSubstring 21 21 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 21 21 +0.0% 1.00x
StringHasPrefixAscii 2205 2294 +4.0% 0.96x
StringHasPrefixUnicode 105484 105340 -0.1% 1.00x (?)
StringHasSuffixAscii 2320 2435 +5.0% 0.95x
StringHasSuffixUnicode 103191 103527 +0.3% 1.00x
StringInterpolationManySmallSegments 20055 20390 +1.7% 0.98x
StringInterpolationSmall 6833 6964 +1.9% 0.98x (?)
StringMatch 12951 13008 +0.4% 1.00x (?)
StringRemoveDupes 525 525 +0.0% 1.00x
StringUTF16Builder 2623 2632 +0.3% 1.00x
StringWalk 1427 1435 +0.6% 0.99x
StringWithCString 40820 40788 -0.1% 1.00x (?)
StringWordBuilder 2332 2348 +0.7% 0.99x
StringWordBuilderReservingCapacity 1909 1957 +2.5% 0.98x
SubstringComparable 27 27 +0.0% 1.00x
SubstringEqualString 791 781 -1.3% 1.01x
SubstringEquatable 1404 1393 -0.8% 1.01x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 75 75 +0.0% 1.00x
SuffixAnyCollection 31 31 +0.0% 1.00x
SuffixAnyCollectionLazy 20835 21185 +1.7% 0.98x (?)
SuffixAnySeqCRangeIter 3901 3904 +0.1% 1.00x (?)
SuffixAnySeqCRangeIterLazy 3902 3885 -0.4% 1.00x (?)
SuffixAnySeqCntRange 20 20 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 20 20 +0.0% 1.00x
SuffixAnySequence 5061 5057 -0.1% 1.00x (?)
SuffixAnySequenceLazy 5189 5178 -0.2% 1.00x (?)
SuffixCountableRangeLazy 11 11 +0.0% 1.00x
SuffixSequence 3743 3717 -0.7% 1.01x
SuffixSequenceLazy 3733 3728 -0.1% 1.00x (?)
SumUsingReduce 97 97 +0.0% 1.00x
SumUsingReduceInto 101 102 +1.0% 0.99x
SuperChars 14831 14839 +0.1% 1.00x (?)
TwoSum 1468 1492 +1.6% 0.98x
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 304 303 -0.3% 1.00x
Walsh 436 422 -3.2% 1.03x
WordCountHistogramASCII 7832 7926 +1.2% 0.99x
WordCountHistogramUTF16 14286 14599 +2.2% 0.98x (?)
WordCountUniqueASCII 2145 2157 +0.6% 0.99x (?)
WordCountUniqueUTF16 7647 7698 +0.7% 0.99x
WordSplitASCII 7072 7155 +1.2% 0.99x (?)
XorLoop 395 402 +1.8% 0.98x
Added (6)
TEST MIN MAX MEAN MAX_RSS
RandomDoubleDef 27676 27693 27682 7696384
RandomDoubleLCG 2268 2269 2268 7674539
RandomIntegersDef 25535 25613 25571 7692288
RandomIntegersLCG 173 173 173 7666347
RandomShuffleDef 875057 877864 876348 31707136
RandomShuffleLCG 57352 57745 57577 31677099

Unoptimized (Onone)

Regression (28)
TEST OLD NEW DELTA SPEEDUP
ObjectiveCBridgeStubFromNSDate 7011 9251 +31.9% 0.76x
CSVParsingAltIndices 2393805 2947312 +23.1% 0.81x
ObjectiveCBridgeFromNSStringForced 2810 3232 +15.0% 0.87x (?)
CharIteration_ascii_unicodeScalars_Backwards 251129 288099 +14.7% 0.87x (?)
StringInterpolationSmall 8839 9964 +12.7% 0.89x
AngryPhonebook 5383 6019 +11.8% 0.89x (?)
StrToInt 77148 84171 +9.1% 0.92x
StringMatch 42326 46046 +8.8% 0.92x
ObjectiveCBridgeToNSDictionary 27716 30072 +8.5% 0.92x
CharIndexing_punctuated_unicodeScalars_Backwards 79556 85903 +8.0% 0.93x (?)
FloatingPointPrinting_Double_interpolated 98720 106313 +7.7% 0.93x (?)
FrequenciesUsingReduceInto 3217 3460 +7.6% 0.93x (?)
ObjectiveCBridgeStubFromArrayOfNSString 32239 34628 +7.4% 0.93x (?)
CharIndexing_utf16_unicodeScalars_Backwards 320624 343819 +7.2% 0.93x
FloatingPointPrinting_Float_interpolated 77852 83437 +7.2% 0.93x (?)
StringWalk 12064 12919 +7.1% 0.93x
FloatingPointPrinting_Float80_description_uniform 58969 62922 +6.7% 0.94x (?)
Dictionary2OfObjects 4328 4608 +6.5% 0.94x
NopDeinit 188845 200901 +6.4% 0.94x
ObjectiveCBridgeToNSSet 17330 18431 +6.4% 0.94x (?)
PartialApplyDynamicType 40060 42518 +6.1% 0.94x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 9801 10395 +6.1% 0.94x (?)
CharIteration_utf16_unicodeScalars_Backwards 219031 231896 +5.9% 0.94x
DataAppendDataSmallToSmall 5944 6292 +5.9% 0.94x (?)
FloatingPointPrinting_Float80_interpolated 117690 124274 +5.6% 0.95x
EqualSubstringSubstringGenericEquatable 56 59 +5.4% 0.95x
DictionaryBridge 1335 1406 +5.3% 0.95x (?)
ArrayOfGenericPOD2 1073 1130 +5.3% 0.95x
Improvement (24)
TEST OLD NEW DELTA SPEEDUP
StringUTF16SubstringBuilder 25019 21544 -13.9% 1.16x
ObjectiveCBridgeStubToNSDate 19154 16758 -12.5% 1.14x
SuffixAnySeqCRangeIter 40198 36304 -9.7% 1.11x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 69181 62681 -9.4% 1.10x
Dictionary4 1319 1200 -9.0% 1.10x
SuffixAnySeqCRangeIterLazy 40108 36517 -9.0% 1.10x
CStringShortAscii 7054 6432 -8.8% 1.10x
DropFirstArray 3663 3345 -8.7% 1.10x
Dictionary4Legacy 1610 1494 -7.2% 1.08x
Dictionary4OfObjectsLegacy 2266 2106 -7.1% 1.08x
SuffixAnyCollectionLazy 35836 33432 -6.7% 1.07x
ObjectiveCBridgeStubURLAppendPathRef 317165 296184 -6.6% 1.07x
DataReplaceMediumBuffer 17304 16167 -6.6% 1.07x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 49438 46280 -6.4% 1.07x (?)
ObjectiveCBridgeStubURLAppendPath 309222 289841 -6.3% 1.07x (?)
Dictionary4OfObjects 1877 1764 -6.0% 1.06x
ArrayPlusEqualThreeElements 10095 9497 -5.9% 1.06x
CharIndexing_russian_unicodeScalars 281056 265861 -5.4% 1.06x
MapReduceLazyCollection 24915 23578 -5.4% 1.06x
PrefixArray 3523 3335 -5.3% 1.06x
DropLastAnySeqCRangeIterLazy 42701 40566 -5.0% 1.05x
StringWithCString 43495 41375 -4.9% 1.05x
DropLastAnySeqCRangeIter 42640 40571 -4.9% 1.05x
Combos 2520 2399 -4.8% 1.05x
No Changes (375)
TEST OLD NEW DELTA SPEEDUP
AnyHashableWithAClass 102017 102303 +0.3% 1.00x
Array2D 656345 664772 +1.3% 0.99x
ArrayAppend 4444 4554 +2.5% 0.98x
ArrayAppendArrayOfInt 865 864 -0.1% 1.00x (?)
ArrayAppendAscii 30662 30610 -0.2% 1.00x (?)
ArrayAppendAsciiSubstring 184463 182537 -1.0% 1.01x
ArrayAppendFromGeneric 872 872 +0.0% 1.00x
ArrayAppendGenericStructs 1502 1504 +0.1% 1.00x (?)
ArrayAppendLatin1 68223 69058 +1.2% 0.99x
ArrayAppendLatin1Substring 323367 320924 -0.8% 1.01x
ArrayAppendLazyMap 170266 169816 -0.3% 1.00x
ArrayAppendOptionals 1503 1507 +0.3% 1.00x (?)
ArrayAppendRepeatCol 184194 182927 -0.7% 1.01x
ArrayAppendReserved 4281 4167 -2.7% 1.03x
ArrayAppendSequence 102968 104135 +1.1% 0.99x
ArrayAppendStrings 6346 6462 +1.8% 0.98x
ArrayAppendToFromGeneric 868 869 +0.1% 1.00x (?)
ArrayAppendToGeneric 870 876 +0.7% 0.99x (?)
ArrayAppendUTF16 67869 67732 -0.2% 1.00x
ArrayAppendUTF16Substring 325329 322827 -0.8% 1.01x (?)
ArrayInClass 6253 6246 -0.1% 1.00x (?)
ArrayLiteral 1833 1806 -1.5% 1.01x (?)
ArrayOfGenericRef 10749 10768 +0.2% 1.00x (?)
ArrayOfPOD 759 762 +0.4% 1.00x
ArrayOfRef 9912 9975 +0.6% 0.99x (?)
ArrayPlusEqualArrayOfInt 869 873 +0.5% 1.00x (?)
ArrayPlusEqualFiveElementCollection 235613 237654 +0.9% 0.99x (?)
ArrayPlusEqualSingleElementCollection 232740 233980 +0.5% 0.99x (?)
ArraySubscript 107715 106308 -1.3% 1.01x
ArrayValueProp 3678 3679 +0.0% 1.00x (?)
ArrayValueProp2 15444 15324 -0.8% 1.01x (?)
ArrayValueProp3 4240 4243 +0.1% 1.00x (?)
ArrayValueProp4 4124 4126 +0.0% 1.00x (?)
BinaryFloatingPointPropertiesBinade 85 86 +1.2% 0.99x
BinaryFloatingPointPropertiesNextUp 128 128 +0.0% 1.00x
BinaryFloatingPointPropertiesUlp 132 129 -2.3% 1.02x
BitCount 8555 8843 +3.4% 0.97x
ByteSwap 9483 9666 +1.9% 0.98x
COWTree 12277 12473 +1.6% 0.98x (?)
CSVParsing 2961660 3010078 +1.6% 0.98x (?)
CSVParsingAlt 1448406 1451892 +0.2% 1.00x (?)
CStringLongAscii 5368 5380 +0.2% 1.00x
CStringLongNonAscii 2479 2467 -0.5% 1.00x (?)
Calculator 2108 2141 +1.6% 0.98x
CaptureProp 278165 277123 -0.4% 1.00x
ChainedFilterMap 233959 233724 -0.1% 1.00x (?)
CharIndexing_ascii_unicodeScalars 324965 317993 -2.1% 1.02x
CharIndexing_ascii_unicodeScalars_Backwards 364567 372377 +2.1% 0.98x (?)
CharIndexing_chinese_unicodeScalars 249324 244722 -1.8% 1.02x
CharIndexing_chinese_unicodeScalars_Backwards 271500 284053 +4.6% 0.96x (?)
CharIndexing_japanese_unicodeScalars 395707 387848 -2.0% 1.02x
CharIndexing_japanese_unicodeScalars_Backwards 432991 445777 +3.0% 0.97x (?)
CharIndexing_korean_unicodeScalars 315686 309463 -2.0% 1.02x
CharIndexing_korean_unicodeScalars_Backwards 352883 353410 +0.1% 1.00x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 57748 56836 -1.6% 1.02x
CharIndexing_punctuated_unicodeScalars 73405 71895 -2.1% 1.02x (?)
CharIndexing_russian_unicodeScalars_Backwards 303058 308546 +1.8% 0.98x (?)
CharIndexing_tweet_unicodeScalars 645021 631564 -2.1% 1.02x (?)
CharIndexing_tweet_unicodeScalars_Backwards 768947 757834 -1.4% 1.01x (?)
CharIndexing_utf16_unicodeScalars 284703 282238 -0.9% 1.01x
CharIteration_ascii_unicodeScalars 150737 150443 -0.2% 1.00x
CharIteration_chinese_unicodeScalars 113813 113826 +0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 190010 192737 +1.4% 0.99x (?)
CharIteration_japanese_unicodeScalars 179977 180301 +0.2% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 301860 306073 +1.4% 0.99x (?)
CharIteration_korean_unicodeScalars 145844 152821 +4.8% 0.95x
CharIteration_korean_unicodeScalars_Backwards 244700 246016 +0.5% 0.99x (?)
CharIteration_punctuatedJapanese_unicodeScalars 26863 26733 -0.5% 1.00x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 43856 45177 +3.0% 0.97x (?)
CharIteration_punctuated_unicodeScalars 33614 33657 +0.1% 1.00x
CharIteration_punctuated_unicodeScalars_Backwards 55606 56165 +1.0% 0.99x (?)
CharIteration_russian_unicodeScalars 125052 125330 +0.2% 1.00x
CharIteration_russian_unicodeScalars_Backwards 209523 212990 +1.7% 0.98x
CharIteration_tweet_unicodeScalars 297145 296994 -0.1% 1.00x (?)
CharIteration_tweet_unicodeScalars_Backwards 498421 506067 +1.5% 0.98x (?)
CharIteration_utf16_unicodeScalars 127909 127450 -0.4% 1.00x
CharacterLiteralsLarge 5798 5800 +0.0% 1.00x (?)
CharacterLiteralsSmall 705 702 -0.4% 1.00x
CharacterPropertiesFetch 5439 5392 -0.9% 1.01x (?)
CharacterPropertiesPrecomputed 3586 3524 -1.7% 1.02x (?)
CharacterPropertiesStashed 2303 2328 +1.1% 0.99x (?)
CharacterPropertiesStashedMemo 4563 4395 -3.7% 1.04x (?)
Chars 36299 36077 -0.6% 1.01x
ClassArrayGetter 992 993 +0.1% 1.00x (?)
DataAccessBytes 2403 2411 +0.3% 1.00x
DataAppendArray 5479 5292 -3.4% 1.04x (?)
DataAppendBytes 5193 4961 -4.5% 1.05x (?)
DataAppendDataLargeToLarge 69901 68805 -1.6% 1.02x (?)
DataAppendDataLargeToMedium 35474 35318 -0.4% 1.00x (?)
DataAppendDataLargeToSmall 34819 34835 +0.0% 1.00x (?)
DataAppendDataMediumToLarge 37909 38251 +0.9% 0.99x (?)
DataAppendDataMediumToMedium 6923 7182 +3.7% 0.96x (?)
DataAppendDataMediumToSmall 6078 6026 -0.9% 1.01x (?)
DataAppendDataSmallToLarge 36869 36901 +0.1% 1.00x (?)
DataAppendDataSmallToMedium 6518 6426 -1.4% 1.01x
DataAppendSequence 1929415 1921436 -0.4% 1.00x (?)
DataCopyBytes 2569 2526 -1.7% 1.02x (?)
DataCount 226 223 -1.3% 1.01x
DataMutateBytes 5270 5298 +0.5% 0.99x (?)
DataReplaceLarge 39852 40083 +0.6% 0.99x (?)
DataReplaceLargeBuffer 60767 61925 +1.9% 0.98x (?)
DataReplaceMedium 9862 10055 +2.0% 0.98x
DataReplaceSmall 6857 7101 +3.6% 0.97x (?)
DataReplaceSmallBuffer 13158 12891 -2.0% 1.02x (?)
DataReset 2907 2865 -1.4% 1.01x (?)
DataSetCount 554 568 +2.5% 0.98x (?)
DataSubscript 443 443 +0.0% 1.00x
DictOfArraysToArrayOfDicts 3454 3483 +0.8% 0.99x (?)
Dictionary 2432 2421 -0.5% 1.00x (?)
Dictionary2 1458 1489 +2.1% 0.98x (?)
Dictionary3 877 880 +0.3% 1.00x (?)
Dictionary3OfObjects 2104 2149 +2.1% 0.98x (?)
DictionaryCopy 312255 312186 -0.0% 1.00x (?)
DictionaryFilter 329376 328691 -0.2% 1.00x (?)
DictionaryGroup 4527 4452 -1.7% 1.02x
DictionaryGroupOfObjects 7092 7076 -0.2% 1.00x (?)
DictionaryLiteral 9046 8978 -0.8% 1.01x
DictionaryOfObjects 6195 6172 -0.4% 1.00x (?)
DictionaryRemove 17449 17395 -0.3% 1.00x
DictionaryRemoveOfObjects 52368 52701 +0.6% 0.99x (?)
DictionarySubscriptDefaultMutation 2014 2019 +0.2% 1.00x (?)
DictionarySubscriptDefaultMutationArray 2266 2221 -2.0% 1.02x
DictionarySubscriptDefaultMutationArrayOfObjects 9367 9458 +1.0% 0.99x (?)
DictionarySubscriptDefaultMutationOfObjects 5234 5500 +5.1% 0.95x (?)
DictionarySwap 4938 4971 +0.7% 0.99x
DictionarySwapAt 35276 34970 -0.9% 1.01x (?)
DictionarySwapAtOfObjects 113138 114223 +1.0% 0.99x (?)
DictionarySwapOfObjects 18815 19398 +3.1% 0.97x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 15501 15322 -1.2% 1.01x
DropFirstAnyCollectionLazy 102922 99248 -3.6% 1.04x (?)
DropFirstAnySeqCRangeIter 23682 23570 -0.5% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 23703 23548 -0.7% 1.01x
DropFirstAnySeqCntRange 15622 15275 -2.2% 1.02x
DropFirstAnySeqCntRangeLazy 15448 15244 -1.3% 1.01x
DropFirstAnySequence 12905 12821 -0.7% 1.01x
DropFirstAnySequenceLazy 12841 12802 -0.3% 1.00x (?)
DropFirstArrayLazy 29494 29608 +0.4% 1.00x
DropFirstCountableRange 311 310 -0.3% 1.00x
DropFirstCountableRangeLazy 34257 33804 -1.3% 1.01x
DropFirstSequence 12590 12455 -1.1% 1.01x (?)
DropFirstSequenceLazy 12497 12396 -0.8% 1.01x
DropLastAnyCollection 5189 5115 -1.4% 1.01x
DropLastAnyCollectionLazy 34277 34013 -0.8% 1.01x (?)
DropLastAnySeqCntRange 5219 5099 -2.3% 1.02x
DropLastAnySeqCntRangeLazy 5164 5104 -1.2% 1.01x
DropLastAnySequence 31234 30600 -2.0% 1.02x
DropLastAnySequenceLazy 31034 30479 -1.8% 1.02x
DropLastCountableRange 107 107 +0.0% 1.00x
DropLastCountableRangeLazy 11326 11271 -0.5% 1.00x (?)
DropLastSequence 30973 30460 -1.7% 1.02x
DropLastSequenceLazy 30939 30405 -1.7% 1.02x
DropWhileAnyCollection 19972 19722 -1.3% 1.01x
DropWhileAnyCollectionLazy 22471 22347 -0.6% 1.01x
DropWhileAnySeqCRangeIter 24654 24472 -0.7% 1.01x
DropWhileAnySeqCRangeIterLazy 22510 22200 -1.4% 1.01x
DropWhileAnySeqCntRange 19910 19716 -1.0% 1.01x
DropWhileAnySeqCntRangeLazy 22436 22276 -0.7% 1.01x
DropWhileAnySequence 13656 13636 -0.1% 1.00x (?)
DropWhileAnySequenceLazy 12725 12339 -3.0% 1.03x
DropWhileArrayLazy 14072 14058 -0.1% 1.00x (?)
DropWhileCountableRange 4860 4813 -1.0% 1.01x
DropWhileCountableRangeLazy 22009 21797 -1.0% 1.01x
DropWhileSequence 13255 13181 -0.6% 1.01x
DropWhileSequenceLazy 12011 11970 -0.3% 1.00x
EqualStringSubstring 71 72 +1.4% 0.99x
EqualSubstringString 71 73 +2.8% 0.97x
EqualSubstringSubstring 72 73 +1.4% 0.99x
ErrorHandling 6384 6344 -0.6% 1.01x (?)
ExclusivityGlobal 183 189 +3.3% 0.97x
ExclusivityIndependent 75 74 -1.3% 1.01x (?)
FatCompactMap 292546 294583 +0.7% 0.99x
FilterEvenUsingReduce 3637 3634 -0.1% 1.00x (?)
FilterEvenUsingReduceInto 1901 1885 -0.8% 1.01x (?)
FloatingPointPrinting_Double_description_small 24868 24551 -1.3% 1.01x (?)
FloatingPointPrinting_Double_description_uniform 36081 36225 +0.4% 1.00x (?)
FloatingPointPrinting_Float80_description_small 31389 31529 +0.4% 1.00x (?)
FloatingPointPrinting_Float_description_small 6791 6814 +0.3% 1.00x
FloatingPointPrinting_Float_description_uniform 17249 17422 +1.0% 0.99x
FrequenciesUsingReduce 10867 10881 +0.1% 1.00x (?)
Hanoi 20751 20504 -1.2% 1.01x (?)
HashTest 20690 21246 +2.7% 0.97x (?)
Histogram 6279 6307 +0.4% 1.00x (?)
Integrate 462 464 +0.4% 1.00x
IterateData 5470 5435 -0.6% 1.01x (?)
Join 808 805 -0.4% 1.00x (?)
LazilyFilteredArrayContains 754837 751480 -0.4% 1.00x
LazilyFilteredArrays 1479454 1440200 -2.7% 1.03x
LazilyFilteredRange 533958 529867 -0.8% 1.01x (?)
LessSubstringSubstring 72 73 +1.4% 0.99x
LessSubstringSubstringGenericComparable 59 60 +1.7% 0.98x
LinkedList 32281 32268 -0.0% 1.00x (?)
LuhnAlgoEager 5613 5731 +2.1% 0.98x (?)
LuhnAlgoLazy 5773 6005 +4.0% 0.96x (?)
MapReduce 25688 25557 -0.5% 1.01x (?)
MapReduceAnyCollection 25797 25683 -0.4% 1.00x (?)
MapReduceAnyCollectionShort 37767 36902 -2.3% 1.02x (?)
MapReduceClass 29668 29685 +0.1% 1.00x (?)
MapReduceClassShort 41327 41527 +0.5% 1.00x (?)
MapReduceLazyCollectionShort 33817 33591 -0.7% 1.01x (?)
MapReduceLazySequence 20195 20220 +0.1% 1.00x (?)
MapReduceSequence 30644 30392 -0.8% 1.01x (?)
MapReduceShort 37100 36209 -2.4% 1.02x
MapReduceShortString 236 240 +1.7% 0.98x (?)
MapReduceString 1748 1759 +0.6% 0.99x
Memset 44831 44805 -0.1% 1.00x (?)
MonteCarloE 1150134 1128702 -1.9% 1.02x
MonteCarloPi 5199260 5131126 -1.3% 1.01x
NSDictionaryCastToSwift 8939 8599 -3.8% 1.04x (?)
NSError 642 674 +5.0% 0.95x
NSStringConversion 780 784 +0.5% 0.99x
NibbleSort 503259 501739 -0.3% 1.00x (?)
ObjectAllocation 1247 1261 +1.1% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObject 29296 29432 +0.5% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 48243 47805 -0.9% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 120414 123338 +2.4% 0.98x (?)
ObjectiveCBridgeFromNSSetAnyObject 57531 59223 +2.9% 0.97x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 5886 5749 -2.3% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 70976 73557 +3.6% 0.96x (?)
ObjectiveCBridgeFromNSString 2865 2902 +1.3% 0.99x
ObjectiveCBridgeStubDataAppend 6306 6422 +1.8% 0.98x
ObjectiveCBridgeStubDateMutation 716 716 +0.0% 1.00x
ObjectiveCBridgeStubFromNSString 1083 1074 -0.8% 1.01x (?)
ObjectiveCBridgeStubFromNSStringRef 196 200 +2.0% 0.98x (?)
ObjectiveCBridgeStubNSDataAppend 3101 3062 -1.3% 1.01x (?)
ObjectiveCBridgeStubNSDateMutationRef 16213 15689 -3.2% 1.03x
ObjectiveCBridgeStubToArrayOfNSString 40718 40255 -1.1% 1.01x (?)
ObjectiveCBridgeStubToNSDateRef 3485 3479 -0.2% 1.00x (?)
ObjectiveCBridgeStubToNSString 2433 2417 -0.7% 1.01x (?)
ObjectiveCBridgeStubToNSStringRef 150 151 +0.7% 0.99x
ObjectiveCBridgeToNSArray 15914 16005 +0.6% 0.99x (?)
ObjectiveCBridgeToNSString 546 544 -0.4% 1.00x
ObserverClosure 6458 6485 +0.4% 1.00x (?)
ObserverForwarderStruct 4371 4347 -0.5% 1.01x
ObserverPartiallyAppliedMethod 8031 8060 +0.4% 1.00x (?)
ObserverUnappliedMethod 8288 8383 +1.1% 0.99x
OpenClose 887 893 +0.7% 0.99x
Phonebook 19174 19239 +0.3% 1.00x (?)
PointerArithmetics 114588 114596 +0.0% 1.00x (?)
PolymorphicCalls 2340 2385 +1.9% 0.98x
PopFrontArray 4769 4763 -0.1% 1.00x (?)
PopFrontArrayGeneric 5532 5539 +0.1% 1.00x (?)
PopFrontUnsafePointer 11133 11200 +0.6% 0.99x (?)
PrefixAnyCollection 15522 15430 -0.6% 1.01x
PrefixAnyCollectionLazy 102901 99272 -3.5% 1.04x (?)
PrefixAnySeqCRangeIter 18887 18886 -0.0% 1.00x (?)
PrefixAnySeqCRangeIterLazy 18936 18809 -0.7% 1.01x
PrefixAnySeqCntRange 15598 15244 -2.3% 1.02x
PrefixAnySeqCntRangeLazy 15464 15252 -1.4% 1.01x
PrefixAnySequence 10597 10469 -1.2% 1.01x (?)
PrefixAnySequenceLazy 10582 10468 -1.1% 1.01x
PrefixArrayLazy 29740 29277 -1.6% 1.02x
PrefixCountableRange 310 310 +0.0% 1.00x
PrefixCountableRangeLazy 34294 33799 -1.4% 1.01x
PrefixSequence 10214 10087 -1.2% 1.01x
PrefixSequenceLazy 10264 10103 -1.6% 1.02x
PrefixWhileAnyCollection 28997 28519 -1.6% 1.02x
PrefixWhileAnyCollectionLazy 18524 18453 -0.4% 1.00x (?)
PrefixWhileAnySeqCRangeIter 34910 34282 -1.8% 1.02x
PrefixWhileAnySeqCRangeIterLazy 18496 18294 -1.1% 1.01x (?)
PrefixWhileAnySeqCntRange 28967 28595 -1.3% 1.01x
PrefixWhileAnySeqCntRangeLazy 18547 18216 -1.8% 1.02x
PrefixWhileAnySequence 27056 26854 -0.7% 1.01x
PrefixWhileAnySequenceLazy 11189 10952 -2.1% 1.02x
PrefixWhileArray 10565 10473 -0.9% 1.01x
PrefixWhileArrayLazy 12324 12367 +0.3% 1.00x (?)
PrefixWhileCountableRange 13842 13644 -1.4% 1.01x
PrefixWhileCountableRangeLazy 18117 18050 -0.4% 1.00x (?)
PrefixWhileSequence 26803 26269 -2.0% 1.02x (?)
PrefixWhileSequenceLazy 10913 10551 -3.3% 1.03x
Prims 9609 9682 +0.8% 0.99x (?)
PrimsSplit 9693 9597 -1.0% 1.01x (?)
QueueConcrete 14448 14361 -0.6% 1.01x
QueueGeneric 19045 19090 +0.2% 1.00x
RC4 16145 16067 -0.5% 1.00x
RGBHistogram 24468 24489 +0.1% 1.00x (?)
RGBHistogramOfObjects 79346 79082 -0.3% 1.00x (?)
RangeAssignment 2677 2723 +1.7% 0.98x
RangeIterationSigned 14681 14939 +1.8% 0.98x (?)
RangeReplaceableCollectionPlusDefault 11144 11185 +0.4% 1.00x (?)
RecursiveOwnedParameter 5794 5769 -0.4% 1.00x (?)
RemoveWhereFilterInts 1952 1950 -0.1% 1.00x (?)
RemoveWhereFilterString 1319 1315 -0.3% 1.00x
RemoveWhereFilterStrings 2478 2470 -0.3% 1.00x (?)
RemoveWhereMoveInts 3411 3397 -0.4% 1.00x
RemoveWhereMoveStrings 3930 3916 -0.4% 1.00x
RemoveWhereQuadraticInts 8087 8081 -0.1% 1.00x (?)
RemoveWhereQuadraticString 2330 2275 -2.4% 1.02x
RemoveWhereQuadraticStrings 9747 9726 -0.2% 1.00x
RemoveWhereSwapInts 6160 6129 -0.5% 1.01x
RemoveWhereSwapStrings 6878 6856 -0.3% 1.00x
ReversedArray 13244 13086 -1.2% 1.01x
ReversedBidirectional 43298 43738 +1.0% 0.99x
ReversedDictionary 24062 24810 +3.1% 0.97x (?)
RomanNumbers 1322202 1379032 +4.3% 0.96x
SequenceAlgosAnySequence 12984 12878 -0.8% 1.01x
SequenceAlgosArray 763903 754377 -1.2% 1.01x
SequenceAlgosContiguousArray 289577 284194 -1.9% 1.02x
SequenceAlgosList 8747 8717 -0.3% 1.00x
SequenceAlgosRange 1276851 1263130 -1.1% 1.01x
SequenceAlgosUnfoldSequence 6555 6456 -1.5% 1.02x
SetExclusiveOr 16303 16741 +2.7% 0.97x
SetExclusiveOr_OfObjects 41651 41165 -1.2% 1.01x (?)
SetIntersect 6553 6585 +0.5% 1.00x
SetIntersect_OfObjects 10225 10248 +0.2% 1.00x (?)
SetIsSubsetOf 1192 1204 +1.0% 0.99x
SetIsSubsetOf_OfObjects 2250 2229 -0.9% 1.01x (?)
SetUnion 11810 11841 +0.3% 1.00x
SetUnion_OfObjects 29726 29914 +0.6% 0.99x (?)
SevenBoom 1078 1085 +0.6% 0.99x (?)
Sim2DArray 43615 44552 +2.1% 0.98x
SortLargeExistentials 11717 11707 -0.1% 1.00x (?)
SortLettersInPlace 1977 1959 -0.9% 1.01x (?)
SortSortedStrings 1144 1162 +1.6% 0.98x
SortStrings 2231 2273 +1.9% 0.98x
SortStringsUnicode 2733 2749 +0.6% 0.99x
StackPromo 103158 99762 -3.3% 1.03x (?)
StaticArray 2508 2541 +1.3% 0.99x
StrComplexWalk 7269 7274 +0.1% 1.00x (?)
StringAdder 1122 1138 +1.4% 0.99x
StringBuilder 5526 5552 +0.5% 1.00x (?)
StringBuilderLong 2957 2959 +0.1% 1.00x (?)
StringBuilderWithLongSubstring 4779 4762 -0.4% 1.00x
StringComparison_abnormal 1319 1341 +1.7% 0.98x
StringComparison_ascii 9473 9457 -0.2% 1.00x
StringComparison_emoji 1998 1997 -0.1% 1.00x (?)
StringComparison_fastPrenormal 5014 4977 -0.7% 1.01x
StringComparison_latin1 3859 3882 +0.6% 0.99x
StringComparison_longSharedPrefix 2392 2376 -0.7% 1.01x (?)
StringComparison_nonBMPSlowestPrenormal 3709 3688 -0.6% 1.01x
StringComparison_slowerPrenormal 4166 4161 -0.1% 1.00x (?)
StringComparison_zalgo 127168 127787 +0.5% 1.00x (?)
StringEdits 378917 380395 +0.4% 1.00x (?)
StringEnumRawValueInitialization 33236 33697 +1.4% 0.99x
StringEqualPointerComparison 1574 1628 +3.4% 0.97x (?)
StringFromLongWholeSubstring 12 12 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 201 200 -0.5% 1.00x
StringHasPrefixAscii 3038 3152 +3.8% 0.96x
StringHasPrefixUnicode 106096 106243 +0.1% 1.00x (?)
StringHasSuffixAscii 3133 3295 +5.2% 0.95x
StringHasSuffixUnicode 103640 103201 -0.4% 1.00x (?)
StringInterpolation 13251 13338 +0.7% 0.99x (?)
StringInterpolationManySmallSegments 21908 21955 +0.2% 1.00x
StringRemoveDupes 737 729 -1.1% 1.01x
StringUTF16Builder 8039 8216 +2.2% 0.98x (?)
StringWordBuilder 2499 2498 -0.0% 1.00x (?)
StringWordBuilderReservingCapacity 2020 2036 +0.8% 0.99x (?)
SubstringComparable 1646 1636 -0.6% 1.01x
SubstringEqualString 1721 1707 -0.8% 1.01x (?)
SubstringEquatable 5461 5434 -0.5% 1.00x (?)
SubstringFromLongString 18 18 +0.0% 1.00x
SubstringFromLongStringGeneric 105 109 +3.8% 0.96x
SuffixAnyCollection 5177 5122 -1.1% 1.01x
SuffixAnySeqCntRange 5217 5112 -2.0% 1.02x
SuffixAnySeqCntRangeLazy 5162 5096 -1.3% 1.01x
SuffixAnySequence 26655 26286 -1.4% 1.01x
SuffixAnySequenceLazy 26683 26352 -1.2% 1.01x
SuffixCountableRange 108 108 +0.0% 1.00x
SuffixCountableRangeLazy 11327 11276 -0.5% 1.00x
SuffixSequence 26580 26148 -1.6% 1.02x
SuffixSequenceLazy 26483 26179 -1.1% 1.01x
SumUsingReduce 160929 160203 -0.5% 1.00x
SumUsingReduceInto 155904 153575 -1.5% 1.02x
SuperChars 86317 89375 +3.5% 0.97x
TwoSum 3542 3526 -0.5% 1.00x (?)
TypeFlood 215 205 -4.7% 1.05x (?)
UTF8Decode 29822 29785 -0.1% 1.00x
Walsh 12075 12089 +0.1% 1.00x (?)
WordCountHistogramASCII 39260 39129 -0.3% 1.00x (?)
WordCountHistogramUTF16 46897 46696 -0.4% 1.00x (?)
WordCountUniqueASCII 7246 7187 -0.8% 1.01x
WordCountUniqueUTF16 13146 12888 -2.0% 1.02x
WordSplitASCII 10307 10628 +3.1% 0.97x (?)
WordSplitUTF16 12239 12765 +4.3% 0.96x (?)
XorLoop 23407 23369 -0.2% 1.00x
Added (6)
TEST MIN MAX MEAN MAX_RSS
RandomDoubleDef 89718 90453 89994 8187904
RandomDoubleLCG 58577 61415 59909 8196096
RandomIntegersDef 62208 67006 63813 8141483
RandomIntegersLCG 38206 38272 38237 8134656
RandomShuffleDef 2271208 2316301 2293099 32190464
RandomShuffleLCG 1525227 1529345 1527415 32206848
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

@Azoy Azoy closed this May 4, 2018
@Azoy Azoy force-pushed the random-unification branch from 819ed68 to 123cde5 Compare May 4, 2018 23:55
@swift-ci
Copy link
Contributor

swift-ci commented May 5, 2018

Build failed
Swift Test OS X Platform
Git Sha - 819ed68f982848ae6887b747cdf964af5cb724a9

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.

3 participants