Skip to content

[stdlib] Specialize floating-point constants for performance #14502

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 9, 2018
Merged

[stdlib] Specialize floating-point constants for performance #14502

merged 1 commit into from
Feb 9, 2018

Conversation

xwu
Copy link
Collaborator

@xwu xwu commented Feb 9, 2018

Floating-point constants such as infinity or greatestFiniteMagnitude can make one's code slower than necessary because they are computed each time they're used. By contrast, pi is as fast as possible. Here, we follow the example of pi and speed up other constants.

(In this PR, signalingNaN is deliberately untouched because it's got some interesting platform-specific behavior.)

Resolves SR-6919.

@xwu xwu requested a review from stephentyrone February 9, 2018 01:46
@xwu
Copy link
Collaborator Author

xwu commented Feb 9, 2018

@swift-ci Please test

@xwu
Copy link
Collaborator Author

xwu commented Feb 9, 2018

@swift-ci Please smoke benchmark

@stephentyrone
Copy link
Contributor

Looks good, thanks.

@swift-ci
Copy link
Contributor

swift-ci commented Feb 9, 2018

Build comment file:

Optimized (O)

Regression (26)
TEST OLD NEW DELTA SPEEDUP
Sim2DArray 418 639 +52.9% 0.65x
RangeIterationSigned 171 200 +17.0% 0.86x
PrefixWhileCountableRange 46 53 +15.2% 0.87x
LazilyFilteredRange 3824 4323 +13.0% 0.88x
ObjectiveCBridgeFromNSSetAnyObjectToString 67414 74955 +11.2% 0.90x (?)
DropLastSequenceLazy 629 693 +10.2% 0.91x
DropLastSequence 631 694 +10.0% 0.91x
NopDeinit 21578 23547 +9.1% 0.92x
DropLastCountableRangeLazy 11 12 +9.1% 0.92x
LazilyFilteredArrayContains 35478 38664 +9.0% 0.92x (?)
Walsh 405 441 +8.9% 0.92x
ObjectiveCBridgeStubNSDateMutationRef 12448 13530 +8.7% 0.92x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 34034 36950 +8.6% 0.92x
DictionaryRemove 2795 3019 +8.0% 0.93x
CharIteration_tweet_unicodeScalars_Backwards 26237 28145 +7.3% 0.93x
CharIteration_utf16_unicodeScalars_Backwards 16683 17889 +7.2% 0.93x
CharIteration_japanese_unicodeScalars_Backwards 15940 17086 +7.2% 0.93x
CharIteration_korean_unicodeScalars_Backwards 12937 13843 +7.0% 0.93x
CharIteration_chinese_unicodeScalars_Backwards 10112 10820 +7.0% 0.93x
CharIteration_ascii_unicodeScalars_Backwards 13343 14266 +6.9% 0.94x
CharIteration_russian_unicodeScalars_Backwards 11148 11902 +6.8% 0.94x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2461 2623 +6.6% 0.94x
StringBuilderLong 1267 1342 +5.9% 0.94x (?)
ObjectiveCBridgeStubURLAppendPath 316469 335001 +5.9% 0.94x
CharIteration_punctuated_unicodeScalars_Backwards 3085 3265 +5.8% 0.94x
CharIndexing_tweet_unicodeScalars 29902 31585 +5.6% 0.95x
Improvement (11)
TEST OLD NEW DELTA SPEEDUP
BinaryFloatingPointConversionFromBinaryInteger 46 38 -17.4% 1.21x
PrefixWhileArray 105 88 -16.2% 1.19x
MapReduceLazyCollectionShort 38 34 -10.5% 1.12x
PointerArithmetics 34366 31493 -8.4% 1.09x
DropLastCountableRange 12 11 -8.3% 1.09x
SuffixCountableRangeLazy 12 11 -8.3% 1.09x
StringWalk 1581 1458 -7.8% 1.08x
ObjectiveCBridgeStubFromArrayOfNSString 27383 25353 -7.4% 1.08x (?)
MapReduceAnyCollection 399 371 -7.0% 1.08x
SumUsingReduce 102 97 -4.9% 1.05x
SumUsingReduceInto 102 97 -4.9% 1.05x
No Changes (325)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3698 3659 -1.1% 1.01x (?)
AnyHashableWithAClass 69896 69789 -0.2% 1.00x (?)
Array2D 2563 2554 -0.4% 1.00x (?)
ArrayAppend 1023 1024 +0.1% 1.00x (?)
ArrayAppendArrayOfInt 800 799 -0.1% 1.00x (?)
ArrayAppendAscii 13679 13650 -0.2% 1.00x (?)
ArrayAppendFromGeneric 802 802 +0.0% 1.00x
ArrayAppendGenericStructs 1446 1430 -1.1% 1.01x
ArrayAppendLatin1 38511 38482 -0.1% 1.00x (?)
ArrayAppendLazyMap 1344 1345 +0.1% 1.00x (?)
ArrayAppendOptionals 1431 1420 -0.8% 1.01x (?)
ArrayAppendRepeatCol 1341 1334 -0.5% 1.01x
ArrayAppendReserved 756 761 +0.7% 0.99x
ArrayAppendSequence 1133 1133 +0.0% 1.00x
ArrayAppendStrings 15253 15262 +0.1% 1.00x (?)
ArrayAppendToFromGeneric 799 799 +0.0% 1.00x
ArrayAppendToGeneric 803 788 -1.9% 1.02x
ArrayAppendUTF16 38089 37936 -0.4% 1.00x (?)
ArrayInClass 86 85 -1.2% 1.01x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 151 150 -0.7% 1.01x (?)
ArrayOfGenericRef 4411 4416 +0.1% 1.00x
ArrayOfPOD 183 184 +0.5% 0.99x
ArrayOfRef 4387 4373 -0.3% 1.00x (?)
ArrayPlusEqualArrayOfInt 805 801 -0.5% 1.00x
ArrayPlusEqualFiveElementCollection 5479 5501 +0.4% 1.00x
ArrayPlusEqualSingleElementCollection 1025 1025 +0.0% 1.00x
ArrayPlusEqualThreeElements 1655 1656 +0.1% 1.00x (?)
ArraySubscript 1528 1525 -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
BitCount 211 202 -4.3% 1.04x
ByteSwap 98 102 +4.1% 0.96x
COWTree 3590 3727 +3.8% 0.96x
CSVParsing 760436 761625 +0.2% 1.00x (?)
CSVParsingAlt 726822 726727 -0.0% 1.00x (?)
CSVParsingAltIndices 360646 359589 -0.3% 1.00x
CStringLongAscii 4774 4775 +0.0% 1.00x (?)
CStringLongNonAscii 2169 2165 -0.2% 1.00x (?)
CStringShortAscii 4742 4753 +0.2% 1.00x (?)
Calculator 434 446 +2.8% 0.97x
CaptureProp 8884 9165 +3.2% 0.97x
CharIndexing_ascii_unicodeScalars 15179 15811 +4.2% 0.96x
CharIndexing_ascii_unicodeScalars_Backwards 14824 14427 -2.7% 1.03x
CharIndexing_chinese_unicodeScalars 11504 11986 +4.2% 0.96x
CharIndexing_chinese_unicodeScalars_Backwards 11234 10936 -2.7% 1.03x
CharIndexing_japanese_unicodeScalars 18160 18939 +4.3% 0.96x
CharIndexing_japanese_unicodeScalars_Backwards 17744 17252 -2.8% 1.03x
CharIndexing_korean_unicodeScalars 14717 15341 +4.2% 0.96x
CharIndexing_korean_unicodeScalars_Backwards 14393 13987 -2.8% 1.03x
CharIndexing_punctuatedJapanese_unicodeScalars 2770 2869 +3.6% 0.97x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2706 2643 -2.3% 1.02x
CharIndexing_punctuated_unicodeScalars 3457 3591 +3.9% 0.96x
CharIndexing_punctuated_unicodeScalars_Backwards 3377 3301 -2.3% 1.02x
CharIndexing_russian_unicodeScalars 12660 13182 +4.1% 0.96x
CharIndexing_russian_unicodeScalars_Backwards 12358 12036 -2.6% 1.03x
CharIndexing_tweet_unicodeScalars_Backwards 29219 28543 -2.3% 1.02x
CharIndexing_utf16_unicodeScalars 20622 20818 +1.0% 0.99x
CharIndexing_utf16_unicodeScalars_Backwards 21474 21368 -0.5% 1.00x
CharIteration_ascii_unicodeScalars 21028 20488 -2.6% 1.03x
CharIteration_chinese_unicodeScalars 15932 15601 -2.1% 1.02x
CharIteration_japanese_unicodeScalars 25196 24658 -2.1% 1.02x
CharIteration_korean_unicodeScalars 20407 19867 -2.6% 1.03x
CharIteration_punctuatedJapanese_unicodeScalars 3766 3663 -2.7% 1.03x
CharIteration_punctuated_unicodeScalars 4723 4602 -2.6% 1.03x
CharIteration_russian_unicodeScalars 17515 17096 -2.4% 1.02x
CharIteration_tweet_unicodeScalars 41757 40744 -2.4% 1.02x
CharIteration_utf16_unicodeScalars 27575 27307 -1.0% 1.01x
CharacterLiteralsLarge 6199 6351 +2.5% 0.98x
CharacterLiteralsSmall 412 412 +0.0% 1.00x
CharacterPropertiesFetch 4728 4752 +0.5% 0.99x (?)
CharacterPropertiesPrecomputed 1074 1085 +1.0% 0.99x (?)
CharacterPropertiesStashed 1646 1666 +1.2% 0.99x (?)
CharacterPropertiesStashedMemo 1630 1636 +0.4% 1.00x (?)
Chars 970 969 -0.1% 1.00x (?)
ClassArrayGetter 15 15 +0.0% 1.00x
Combos 462 453 -1.9% 1.02x
DictOfArraysToArrayOfDicts 790 784 -0.8% 1.01x (?)
Dictionary 504 500 -0.8% 1.01x
Dictionary2 1620 1620 +0.0% 1.00x
Dictionary2OfObjects 2973 2977 +0.1% 1.00x (?)
Dictionary3 239 238 -0.4% 1.00x
Dictionary3OfObjects 671 669 -0.3% 1.00x (?)
Dictionary4 147 147 +0.0% 1.00x
Dictionary4OfObjects 199 203 +2.0% 0.98x
DictionaryBridge 1995 1989 -0.3% 1.00x (?)
DictionaryGroup 132 133 +0.8% 0.99x
DictionaryGroupOfObjects 1915 1912 -0.2% 1.00x (?)
DictionaryLiteral 1620 1628 +0.5% 1.00x
DictionaryOfObjects 2192 2197 +0.2% 1.00x (?)
DictionaryRemoveOfObjects 23676 23851 +0.7% 0.99x
DictionarySubscriptDefaultMutation 146 145 -0.7% 1.01x (?)
DictionarySubscriptDefaultMutationArray 494 493 -0.2% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 3840 3845 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 1408 1406 -0.1% 1.00x
DictionarySwap 469 466 -0.6% 1.01x
DictionarySwapOfObjects 7539 7546 +0.1% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 76 76 +0.0% 1.00x
DropFirstAnyCollectionLazy 69636 66843 -4.0% 1.04x (?)
DropFirstAnySeqCRangeIter 17966 18018 +0.3% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 17954 18019 +0.4% 1.00x (?)
DropFirstAnySeqCntRange 71 71 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 71 71 +0.0% 1.00x
DropFirstAnySequence 4499 4434 -1.4% 1.01x
DropFirstAnySequenceLazy 4653 4592 -1.3% 1.01x
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 2711 2701 -0.4% 1.00x (?)
DropFirstSequenceLazy 2814 2794 -0.7% 1.01x (?)
DropLastAnyCollection 28 28 +0.0% 1.00x
DropLastAnyCollectionLazy 22210 21762 -2.0% 1.02x (?)
DropLastAnySeqCRangeIter 3559 3556 -0.1% 1.00x
DropLastAnySeqCRangeIterLazy 3556 3555 -0.0% 1.00x (?)
DropLastAnySeqCntRange 23 23 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 23 23 +0.0% 1.00x
DropLastAnySequence 5228 5228 +0.0% 1.00x
DropLastAnySequenceLazy 5351 5434 +1.6% 0.98x (?)
DropWhileAnyCollection 100 100 +0.0% 1.00x
DropWhileAnyCollectionLazy 147 147 +0.0% 1.00x
DropWhileAnySeqCRangeIter 14950 14972 +0.1% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 147 147 +0.0% 1.00x
DropWhileAnySeqCntRange 95 95 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 147 147 +0.0% 1.00x
DropWhileAnySequence 4840 4830 -0.2% 1.00x
DropWhileAnySequenceLazy 1856 1856 +0.0% 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 1340 -0.1% 1.00x
DropWhileSequenceLazy 88 88 +0.0% 1.00x
EqualStringSubstring 433 433 +0.0% 1.00x
EqualSubstringString 432 433 +0.2% 1.00x (?)
EqualSubstringSubstring 432 432 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 432 432 +0.0% 1.00x
ErrorHandling 2323 2347 +1.0% 0.99x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FilterEvenUsingReduce 1328 1327 -0.1% 1.00x (?)
FilterEvenUsingReduceInto 148 152 +2.7% 0.97x
FrequenciesUsingReduce 6681 6687 +0.1% 1.00x (?)
FrequenciesUsingReduceInto 3174 3166 -0.3% 1.00x (?)
Hanoi 3642 3480 -4.4% 1.05x
HashTest 1758 1787 +1.6% 0.98x (?)
Histogram 326 326 +0.0% 1.00x
Integrate 220 220 +0.0% 1.00x
IterateData 1358 1390 +2.4% 0.98x
Join 378 380 +0.5% 0.99x
LazilyFilteredArrays 65923 67976 +3.1% 0.97x
LessSubstringSubstring 432 433 +0.2% 1.00x
LessSubstringSubstringGenericComparable 432 432 +0.0% 1.00x
LinkedList 7523 7523 +0.0% 1.00x
LuhnAlgoEager 585 583 -0.3% 1.00x
LuhnAlgoLazy 580 583 +0.5% 0.99x
MapReduce 399 399 +0.0% 1.00x
MapReduceAnyCollectionShort 2058 2070 +0.6% 0.99x
MapReduceClass 3040 3046 +0.2% 1.00x (?)
MapReduceClassShort 4566 4625 +1.3% 0.99x
MapReduceLazyCollection 13 13 +0.0% 1.00x
MapReduceLazySequence 86 86 +0.0% 1.00x
MapReduceSequence 457 456 -0.2% 1.00x
MapReduceShort 2056 2048 -0.4% 1.00x (?)
MapReduceShortString 21 21 +0.0% 1.00x
MapReduceString 83 81 -2.4% 1.02x
Memset 220 219 -0.5% 1.00x (?)
MonteCarloE 10426 10479 +0.5% 0.99x
MonteCarloPi 42909 43065 +0.4% 1.00x
NSDictionaryCastToSwift 5610 5480 -2.3% 1.02x (?)
NSError 307 307 +0.0% 1.00x
NSStringConversion 320 326 +1.9% 0.98x
NibbleSort 3963 4120 +4.0% 0.96x
ObjectAllocation 185 186 +0.5% 0.99x
ObjectiveCBridgeFromNSArrayAnyObject 20170 19715 -2.3% 1.02x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 4045 4055 +0.2% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 39525 39133 -1.0% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 122187 118831 -2.7% 1.03x (?)
ObjectiveCBridgeFromNSSetAnyObject 60603 59182 -2.3% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4280 4130 -3.5% 1.04x
ObjectiveCBridgeFromNSString 1315 1267 -3.7% 1.04x
ObjectiveCBridgeFromNSStringForced 2378 2346 -1.3% 1.01x
ObjectiveCBridgeStubDataAppend 3912 3959 +1.2% 0.99x (?)
ObjectiveCBridgeStubDateMutation 257 257 +0.0% 1.00x
ObjectiveCBridgeStubFromNSDate 4132 4197 +1.6% 0.98x
ObjectiveCBridgeStubFromNSString 863 868 +0.6% 0.99x (?)
ObjectiveCBridgeStubFromNSStringRef 158 157 -0.6% 1.01x
ObjectiveCBridgeStubNSDataAppend 2617 2563 -2.1% 1.02x (?)
ObjectiveCBridgeStubToArrayOfNSString 28601 28470 -0.5% 1.00x (?)
ObjectiveCBridgeStubToNSDate 15974 15814 -1.0% 1.01x (?)
ObjectiveCBridgeStubToNSDateRef 3391 3479 +2.6% 0.97x (?)
ObjectiveCBridgeStubToNSString 1613 1601 -0.7% 1.01x (?)
ObjectiveCBridgeStubToNSStringRef 113 115 +1.8% 0.98x
ObjectiveCBridgeStubURLAppendPathRef 325601 327997 +0.7% 0.99x (?)
ObjectiveCBridgeToNSArray 28752 28696 -0.2% 1.00x (?)
ObjectiveCBridgeToNSDictionary 55202 53266 -3.5% 1.04x
ObjectiveCBridgeToNSSet 45146 44421 -1.6% 1.02x (?)
ObjectiveCBridgeToNSString 1371 1366 -0.4% 1.00x (?)
ObserverClosure 2162 2172 +0.5% 1.00x
ObserverForwarderStruct 1004 1002 -0.2% 1.00x (?)
ObserverPartiallyAppliedMethod 3764 3795 +0.8% 0.99x (?)
ObserverUnappliedMethod 2379 2376 -0.1% 1.00x (?)
OpenClose 263 257 -2.3% 1.02x
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 4121 4061 -1.5% 1.01x
PolymorphicCalls 25 25 +0.0% 1.00x
PopFrontArray 1938 1943 +0.3% 1.00x (?)
PopFrontArrayGeneric 1962 1968 +0.3% 1.00x (?)
PopFrontUnsafePointer 9638 9363 -2.9% 1.03x
PrefixAnyCollection 76 76 +0.0% 1.00x
PrefixAnyCollectionLazy 65337 65103 -0.4% 1.00x
PrefixAnySeqCRangeIter 14042 14094 +0.4% 1.00x (?)
PrefixAnySeqCRangeIterLazy 14098 14091 -0.0% 1.00x (?)
PrefixAnySeqCntRange 71 71 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 71 71 +0.0% 1.00x
PrefixAnySequence 3816 3826 +0.3% 1.00x (?)
PrefixAnySequenceLazy 3900 3918 +0.5% 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 1325 1325 +0.0% 1.00x
PrefixSequenceLazy 1415 1414 -0.1% 1.00x
PrefixWhileAnyCollection 147 147 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 106 106 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 9525 9502 -0.2% 1.00x
PrefixWhileAnySeqCRangeIterLazy 106 106 +0.0% 1.00x
PrefixWhileAnySeqCntRange 142 142 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 106 106 +0.0% 1.00x
PrefixWhileAnySequence 10738 10690 -0.4% 1.00x
PrefixWhileAnySequenceLazy 1392 1393 +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 752 758 +0.8% 0.99x
PrimsSplit 754 767 +1.7% 0.98x
QueueConcrete 1314 1312 -0.2% 1.00x
QueueGeneric 1163 1164 +0.1% 1.00x
RC4 166 165 -0.6% 1.01x
RGBHistogram 2955 2948 -0.2% 1.00x (?)
RGBHistogramOfObjects 24066 24034 -0.1% 1.00x (?)
RangeAssignment 357 355 -0.6% 1.01x (?)
RangeIterationSigned64 200 200 +0.0% 1.00x
RangeIterationUnsigned 200 200 +0.0% 1.00x
RangeReplaceableCollectionPlusDefault 992 986 -0.6% 1.01x (?)
RecursiveOwnedParameter 2377 2348 -1.2% 1.01x
ReversedArray 57 57 +0.0% 1.00x
ReversedBidirectional 15397 15391 -0.0% 1.00x (?)
ReversedDictionary 126 125 -0.8% 1.01x (?)
RomanNumbers 118305 120463 +1.8% 0.98x
SetExclusiveOr 3463 3483 +0.6% 0.99x (?)
SetExclusiveOr_OfObjects 8870 8979 +1.2% 0.99x (?)
SetIntersect 334 332 -0.6% 1.01x
SetIntersect_OfObjects 1776 1779 +0.2% 1.00x (?)
SetIsSubsetOf 300 300 +0.0% 1.00x
SetIsSubsetOf_OfObjects 367 366 -0.3% 1.00x (?)
SetUnion 3201 3155 -1.4% 1.01x (?)
SetUnion_OfObjects 7299 7410 +1.5% 0.99x
SevenBoom 1555 1567 +0.8% 0.99x (?)
SortLargeExistentials 7124 7065 -0.8% 1.01x
SortLettersInPlace 1159 1158 -0.1% 1.00x (?)
SortSortedStrings 1192 1146 -3.9% 1.04x
SortStrings 2080 2035 -2.2% 1.02x
SortStringsUnicode 15552 15600 +0.3% 1.00x (?)
StackPromo 22213 22167 -0.2% 1.00x
StaticArray 6 6 +0.0% 1.00x
StrComplexWalk 1567 1565 -0.1% 1.00x (?)
StrToInt 2191 2138 -2.4% 1.02x
StringAdder 4294 4289 -0.1% 1.00x (?)
StringBuilder 1470 1460 -0.7% 1.01x (?)
StringComparison_abnormal 866 867 +0.1% 1.00x (?)
StringComparison_ascii 978 976 -0.2% 1.00x
StringComparison_emoji 2603 2596 -0.3% 1.00x (?)
StringComparison_fastPrenormal 8782 8789 +0.1% 1.00x (?)
StringComparison_latin1 6043 6040 -0.0% 1.00x (?)
StringComparison_longSharedPrefix 11531 11535 +0.0% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 4705 4709 +0.1% 1.00x (?)
StringComparison_slowerPrenormal 4206 4216 +0.2% 1.00x (?)
StringComparison_zalgo 1732 1735 +0.2% 1.00x
StringEdits 119085 120738 +1.4% 0.99x (?)
StringEnumRawValueInitialization 1013 984 -2.9% 1.03x
StringEqualPointerComparison 286 286 +0.0% 1.00x
StringFromLongWholeSubstring 21 21 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 10 10 +0.0% 1.00x
StringHasPrefixAscii 1576 1603 +1.7% 0.98x
StringHasPrefixUnicode 28172 28081 -0.3% 1.00x (?)
StringHasSuffixAscii 1720 1719 -0.1% 1.00x
StringHasSuffixUnicode 85622 85390 -0.3% 1.00x (?)
StringInterpolation 9351 9434 +0.9% 0.99x (?)
StringMatch 7730 7560 -2.2% 1.02x
StringRemoveDupes 1210 1200 -0.8% 1.01x (?)
StringUTF16Builder 2427 2449 +0.9% 0.99x (?)
StringWithCString 42634 43038 +0.9% 0.99x
StringWordBuilder 1753 1732 -1.2% 1.01x
StringWordBuilderReservingCapacity 1302 1289 -1.0% 1.01x
SubstringComparable 2079 2090 +0.5% 0.99x
SubstringEqualString 2138 2127 -0.5% 1.01x (?)
SubstringEquatable 3199 3208 +0.3% 1.00x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 71 70 -1.4% 1.01x
SuffixAnyCollection 28 28 +0.0% 1.00x
SuffixAnyCollectionLazy 21805 21722 -0.4% 1.00x (?)
SuffixAnySeqCRangeIter 3825 3816 -0.2% 1.00x
SuffixAnySeqCRangeIterLazy 3857 3812 -1.2% 1.01x
SuffixAnySeqCntRange 23 23 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 23 23 +0.0% 1.00x
SuffixAnySequence 5168 5141 -0.5% 1.01x
SuffixAnySequenceLazy 5303 5298 -0.1% 1.00x
SuffixCountableRange 11 11 +0.0% 1.00x
SuffixSequence 3798 3782 -0.4% 1.00x
SuffixSequenceLazy 3770 3769 -0.0% 1.00x (?)
SuperChars 41014 41592 +1.4% 0.99x (?)
TwoSum 1003 1000 -0.3% 1.00x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 313 318 +1.6% 0.98x
WordCountHistogramASCII 8110 8171 +0.8% 0.99x
WordCountHistogramUTF16 52532 54936 +4.6% 0.96x
WordCountUniqueASCII 1826 1872 +2.5% 0.98x (?)
WordCountUniqueUTF16 24900 23897 -4.0% 1.04x (?)
WordSplitASCII 21330 21069 -1.2% 1.01x (?)
WordSplitUTF16 21742 22108 +1.7% 0.98x (?)
XorLoop 394 394 +0.0% 1.00x

Unoptimized (Onone)

Regression (7)
TEST OLD NEW DELTA SPEEDUP
CharIteration_korean_unicodeScalars 148847 185467 +24.6% 0.80x (?)
ObjectiveCBridgeStubToNSDate 15608 18730 +20.0% 0.83x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 6406 7186 +12.2% 0.89x (?)
PrefixAnyCollectionLazy 101299 110582 +9.2% 0.92x (?)
SuffixAnyCollectionLazy 33446 36407 +8.9% 0.92x
COWTree 11145 11865 +6.5% 0.94x
StringInterpolation 13344 14175 +6.2% 0.94x
Improvement (23)
TEST OLD NEW DELTA SPEEDUP
CharIndexing_tweet_unicodeScalars 856633 747985 -12.7% 1.15x
CharIndexing_japanese_unicodeScalars 469119 420183 -10.4% 1.12x
CharIndexing_korean_unicodeScalars 382856 343247 -10.3% 1.12x (?)
CharIteration_ascii_unicodeScalars_Backwards 327859 295222 -10.0% 1.11x
CharIndexing_ascii_unicodeScalars_Backwards 446958 404904 -9.4% 1.10x
CharIndexing_punctuatedJapanese_unicodeScalars 67719 61609 -9.0% 1.10x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 55781 50778 -9.0% 1.10x (?)
SubstringEquatable 8641 7868 -8.9% 1.10x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 72087 66066 -8.4% 1.09x (?)
CharIndexing_korean_unicodeScalars_Backwards 406263 373346 -8.1% 1.09x (?)
Combos 2313 2126 -8.1% 1.09x (?)
CharIndexing_ascii_unicodeScalars 388328 359132 -7.5% 1.08x (?)
CharIndexing_chinese_unicodeScalars 287892 267472 -7.1% 1.08x (?)
CharIndexing_tweet_unicodeScalars_Backwards 814765 759779 -6.7% 1.07x (?)
CharIndexing_punctuated_unicodeScalars 84852 79130 -6.7% 1.07x (?)
StringEqualPointerComparison 3379 3152 -6.7% 1.07x
CharacterPropertiesStashedMemo 5192 4850 -6.6% 1.07x
ObjectiveCBridgeStubDataAppend 4773 4478 -6.2% 1.07x
SubstringEqualString 3722 3493 -6.2% 1.07x (?)
CharIndexing_utf16_unicodeScalars_Backwards 343806 322742 -6.1% 1.07x (?)
CharIndexing_russian_unicodeScalars 327434 307382 -6.1% 1.07x (?)
CharIndexing_chinese_unicodeScalars_Backwards 312526 295080 -5.6% 1.06x (?)
StringWithCString 39740 37750 -5.0% 1.05x
No Changes (332)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 5140 5108 -0.6% 1.01x (?)
AnyHashableWithAClass 88919 88869 -0.1% 1.00x (?)
Array2D 633500 631863 -0.3% 1.00x
ArrayAppend 4667 4666 -0.0% 1.00x (?)
ArrayAppendArrayOfInt 864 864 +0.0% 1.00x
ArrayAppendAscii 40362 39903 -1.1% 1.01x
ArrayAppendFromGeneric 868 871 +0.3% 1.00x (?)
ArrayAppendGenericStructs 1503 1504 +0.1% 1.00x (?)
ArrayAppendLatin1 63692 63043 -1.0% 1.01x
ArrayAppendLazyMap 168212 169270 +0.6% 0.99x
ArrayAppendOptionals 1503 1504 +0.1% 1.00x (?)
ArrayAppendRepeatCol 172770 169921 -1.6% 1.02x
ArrayAppendReserved 4395 4397 +0.0% 1.00x (?)
ArrayAppendSequence 144842 145713 +0.6% 0.99x
ArrayAppendStrings 15419 15441 +0.1% 1.00x (?)
ArrayAppendToFromGeneric 866 868 +0.2% 1.00x
ArrayAppendToGeneric 869 870 +0.1% 1.00x (?)
ArrayAppendUTF16 63153 62783 -0.6% 1.01x
ArrayInClass 6195 6159 -0.6% 1.01x
ArrayLiteral 1777 1804 +1.5% 0.99x (?)
ArrayOfGenericPOD2 1073 1129 +5.2% 0.95x (?)
ArrayOfGenericRef 10044 10086 +0.4% 1.00x (?)
ArrayOfPOD 758 759 +0.1% 1.00x (?)
ArrayOfRef 9317 9317 +0.0% 1.00x
ArrayPlusEqualArrayOfInt 865 865 +0.0% 1.00x
ArrayPlusEqualFiveElementCollection 237556 232415 -2.2% 1.02x (?)
ArrayPlusEqualSingleElementCollection 238906 235393 -1.5% 1.01x (?)
ArrayPlusEqualThreeElements 9320 9239 -0.9% 1.01x (?)
ArraySubscript 81464 81152 -0.4% 1.00x
ArrayValueProp 3616 3598 -0.5% 1.01x (?)
ArrayValueProp2 16729 16237 -2.9% 1.03x (?)
ArrayValueProp3 4120 4089 -0.8% 1.01x (?)
ArrayValueProp4 4077 4070 -0.2% 1.00x (?)
BinaryFloatingPointConversionFromBinaryInteger 5967 5930 -0.6% 1.01x (?)
BitCount 2208 2208 +0.0% 1.00x
ByteSwap 3890 3900 +0.3% 1.00x (?)
CSVParsing 2452777 2476874 +1.0% 0.99x (?)
CSVParsingAlt 1363559 1311473 -3.8% 1.04x
CSVParsingAltIndices 2505502 2572389 +2.7% 0.97x
CStringLongAscii 4758 4600 -3.3% 1.03x
CStringLongNonAscii 2130 2145 +0.7% 0.99x (?)
CStringShortAscii 7577 7799 +2.9% 0.97x (?)
Calculator 1762 1680 -4.7% 1.05x
CaptureProp 262788 262185 -0.2% 1.00x
CharIndexing_japanese_unicodeScalars_Backwards 495255 493486 -0.4% 1.00x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 94587 91648 -3.1% 1.03x (?)
CharIndexing_russian_unicodeScalars_Backwards 338197 327663 -3.1% 1.03x (?)
CharIndexing_utf16_unicodeScalars 320274 309579 -3.3% 1.03x (?)
CharIteration_ascii_unicodeScalars 153617 153281 -0.2% 1.00x (?)
CharIteration_chinese_unicodeScalars 116872 116169 -0.6% 1.01x
CharIteration_chinese_unicodeScalars_Backwards 221477 220399 -0.5% 1.00x
CharIteration_japanese_unicodeScalars 183510 183557 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 352160 345993 -1.8% 1.02x (?)
CharIteration_korean_unicodeScalars_Backwards 284712 281480 -1.1% 1.01x (?)
CharIteration_punctuatedJapanese_unicodeScalars 27589 27686 +0.4% 1.00x (?)
CharIteration_punctuated_unicodeScalars 34539 34675 +0.4% 1.00x (?)
CharIteration_punctuated_unicodeScalars_Backwards 64259 64726 +0.7% 0.99x (?)
CharIteration_russian_unicodeScalars 127776 127975 +0.2% 1.00x (?)
CharIteration_russian_unicodeScalars_Backwards 244115 244068 -0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars 309904 310722 +0.3% 1.00x (?)
CharIteration_tweet_unicodeScalars_Backwards 597531 587878 -1.6% 1.02x
CharIteration_utf16_unicodeScalars 130411 130341 -0.1% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 249020 248554 -0.2% 1.00x (?)
CharacterLiteralsLarge 6040 6004 -0.6% 1.01x (?)
CharacterLiteralsSmall 714 714 +0.0% 1.00x
CharacterPropertiesFetch 5403 5416 +0.2% 1.00x (?)
CharacterPropertiesPrecomputed 4273 4214 -1.4% 1.01x (?)
CharacterPropertiesStashed 2274 2278 +0.2% 1.00x (?)
Chars 46081 45891 -0.4% 1.00x
ClassArrayGetter 981 978 -0.3% 1.00x (?)
DictOfArraysToArrayOfDicts 3503 3412 -2.6% 1.03x (?)
Dictionary 2583 2584 +0.0% 1.00x (?)
Dictionary2 2884 2892 +0.3% 1.00x (?)
Dictionary2OfObjects 5540 5528 -0.2% 1.00x (?)
Dictionary3 1262 1272 +0.8% 0.99x (?)
Dictionary3OfObjects 2279 2212 -2.9% 1.03x
Dictionary4 1192 1190 -0.2% 1.00x (?)
Dictionary4OfObjects 1821 1808 -0.7% 1.01x (?)
DictionaryBridge 2183 2178 -0.2% 1.00x (?)
DictionaryGroup 4211 4185 -0.6% 1.01x
DictionaryGroupOfObjects 7526 7448 -1.0% 1.01x
DictionaryLiteral 8729 8791 +0.7% 0.99x (?)
DictionaryOfObjects 6135 6056 -1.3% 1.01x (?)
DictionaryRemove 18267 18265 -0.0% 1.00x (?)
DictionaryRemoveOfObjects 51496 49438 -4.0% 1.04x (?)
DictionarySubscriptDefaultMutation 2099 2097 -0.1% 1.00x (?)
DictionarySubscriptDefaultMutationArray 2368 2357 -0.5% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 8966 8991 +0.3% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 5712 5612 -1.8% 1.02x (?)
DictionarySwap 5241 5200 -0.8% 1.01x
DictionarySwapOfObjects 22334 22225 -0.5% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 13452 13573 +0.9% 0.99x
DropFirstAnyCollectionLazy 105962 108059 +2.0% 0.98x
DropFirstAnySeqCRangeIter 20529 20539 +0.0% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 20542 20571 +0.1% 1.00x
DropFirstAnySeqCntRange 13514 13562 +0.4% 1.00x
DropFirstAnySeqCntRangeLazy 13552 13707 +1.1% 0.99x (?)
DropFirstAnySequence 10971 10874 -0.9% 1.01x
DropFirstAnySequenceLazy 11030 10924 -1.0% 1.01x
DropFirstArray 3807 3816 +0.2% 1.00x (?)
DropFirstArrayLazy 25421 25351 -0.3% 1.00x (?)
DropFirstCountableRange 325 325 +0.0% 1.00x
DropFirstCountableRangeLazy 26050 26102 +0.2% 1.00x (?)
DropFirstSequence 10546 10402 -1.4% 1.01x
DropFirstSequenceLazy 10584 10508 -0.7% 1.01x
DropLastAnyCollection 4504 4533 +0.6% 0.99x (?)
DropLastAnyCollectionLazy 35077 36435 +3.9% 0.96x
DropLastAnySeqCRangeIter 37781 37402 -1.0% 1.01x
DropLastAnySeqCRangeIterLazy 37725 37397 -0.9% 1.01x
DropLastAnySeqCntRange 4522 4519 -0.1% 1.00x (?)
DropLastAnySeqCntRangeLazy 4623 4545 -1.7% 1.02x (?)
DropLastAnySequence 29093 28914 -0.6% 1.01x (?)
DropLastAnySequenceLazy 28876 28907 +0.1% 1.00x (?)
DropLastCountableRange 111 112 +0.9% 0.99x
DropLastCountableRangeLazy 8709 8648 -0.7% 1.01x (?)
DropLastSequence 29346 29014 -1.1% 1.01x (?)
DropLastSequenceLazy 28833 28775 -0.2% 1.00x (?)
DropWhileAnyCollection 17250 17323 +0.4% 1.00x (?)
DropWhileAnyCollectionLazy 18843 18955 +0.6% 0.99x
DropWhileAnySeqCRangeIter 22103 21899 -0.9% 1.01x
DropWhileAnySeqCRangeIterLazy 18792 19001 +1.1% 0.99x
DropWhileAnySeqCntRange 17213 17287 +0.4% 1.00x (?)
DropWhileAnySeqCntRangeLazy 18846 18996 +0.8% 0.99x
DropWhileAnySequence 12448 12301 -1.2% 1.01x
DropWhileAnySequenceLazy 10402 10343 -0.6% 1.01x
DropWhileArrayLazy 13651 13726 +0.5% 0.99x (?)
DropWhileCountableRange 4126 4153 +0.7% 0.99x (?)
DropWhileCountableRangeLazy 18575 18592 +0.1% 1.00x (?)
DropWhileSequence 12149 12015 -1.1% 1.01x
DropWhileSequenceLazy 9829 9772 -0.6% 1.01x
EqualStringSubstring 477 477 +0.0% 1.00x
EqualSubstringString 479 478 -0.2% 1.00x
EqualSubstringSubstring 479 478 -0.2% 1.00x (?)
EqualSubstringSubstringGenericEquatable 488 489 +0.2% 1.00x
ErrorHandling 7300 6977 -4.4% 1.05x (?)
ExclusivityGlobal 194 189 -2.6% 1.03x
ExclusivityIndependent 72 71 -1.4% 1.01x (?)
FilterEvenUsingReduce 3730 3743 +0.3% 1.00x (?)
FilterEvenUsingReduceInto 1983 1992 +0.5% 1.00x (?)
FrequenciesUsingReduce 10417 10786 +3.5% 0.97x (?)
FrequenciesUsingReduceInto 5540 5526 -0.3% 1.00x (?)
Hanoi 20238 19689 -2.7% 1.03x (?)
HashTest 16598 16260 -2.0% 1.02x
Histogram 6558 6565 +0.1% 1.00x (?)
Integrate 812 822 +1.2% 0.99x
IterateData 7874 7906 +0.4% 1.00x
Join 1106 1106 +0.0% 1.00x
LazilyFilteredArrayContains 782500 779588 -0.4% 1.00x
LazilyFilteredArrays 1454799 1459845 +0.3% 1.00x (?)
LazilyFilteredRange 473917 472966 -0.2% 1.00x (?)
LessSubstringSubstring 479 478 -0.2% 1.00x
LessSubstringSubstringGenericComparable 485 484 -0.2% 1.00x
LinkedList 32125 32003 -0.4% 1.00x
LuhnAlgoEager 5160 5081 -1.5% 1.02x (?)
LuhnAlgoLazy 5142 5328 +3.6% 0.97x (?)
MapReduce 27281 27285 +0.0% 1.00x (?)
MapReduceAnyCollection 27271 27289 +0.1% 1.00x (?)
MapReduceAnyCollectionShort 39148 38154 -2.5% 1.03x (?)
MapReduceClass 31869 31960 +0.3% 1.00x (?)
MapReduceClassShort 42705 43797 +2.6% 0.98x (?)
MapReduceLazyCollection 23720 23803 +0.3% 1.00x
MapReduceLazyCollectionShort 35493 34235 -3.5% 1.04x
MapReduceLazySequence 18260 18153 -0.6% 1.01x
MapReduceSequence 30934 30855 -0.3% 1.00x (?)
MapReduceShort 38560 38951 +1.0% 0.99x (?)
MapReduceShortString 239 241 +0.8% 0.99x (?)
MapReduceString 1933 1916 -0.9% 1.01x (?)
Memset 44718 44756 +0.1% 1.00x (?)
MonteCarloE 897250 894802 -0.3% 1.00x (?)
MonteCarloPi 3872995 3874021 +0.0% 1.00x (?)
NSDictionaryCastToSwift 6901 6576 -4.7% 1.05x (?)
NSError 754 743 -1.5% 1.01x (?)
NSStringConversion 366 369 +0.8% 0.99x
NibbleSort 301143 297704 -1.1% 1.01x
NopDeinit 172057 166459 -3.3% 1.03x
ObjectAllocation 1352 1342 -0.7% 1.01x (?)
ObjectiveCBridgeFromNSArrayAnyObject 23841 23818 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 8374 8181 -2.3% 1.02x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 40136 41862 +4.3% 0.96x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 35265 36646 +3.9% 0.96x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 126350 125572 -0.6% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObject 63410 62366 -1.6% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 76250 75908 -0.4% 1.00x (?)
ObjectiveCBridgeFromNSString 3113 3136 +0.7% 0.99x (?)
ObjectiveCBridgeFromNSStringForced 2708 2688 -0.7% 1.01x (?)
ObjectiveCBridgeStubDateMutation 630 631 +0.2% 1.00x
ObjectiveCBridgeStubFromArrayOfNSString 25929 26824 +3.5% 0.97x (?)
ObjectiveCBridgeStubFromNSDate 4395 4392 -0.1% 1.00x (?)
ObjectiveCBridgeStubFromNSString 902 899 -0.3% 1.00x (?)
ObjectiveCBridgeStubFromNSStringRef 196 197 +0.5% 0.99x
ObjectiveCBridgeStubNSDataAppend 3055 2949 -3.5% 1.04x (?)
ObjectiveCBridgeStubNSDateMutationRef 15431 15837 +2.6% 0.97x (?)
ObjectiveCBridgeStubToArrayOfNSString 29028 28315 -2.5% 1.03x
ObjectiveCBridgeStubToNSDateRef 3438 3465 +0.8% 0.99x (?)
ObjectiveCBridgeStubToNSString 1580 1567 -0.8% 1.01x (?)
ObjectiveCBridgeStubToNSStringRef 153 153 +0.0% 1.00x
ObjectiveCBridgeStubURLAppendPath 327880 336618 +2.7% 0.97x (?)
ObjectiveCBridgeStubURLAppendPathRef 347528 344471 -0.9% 1.01x (?)
ObjectiveCBridgeToNSArray 29654 29286 -1.2% 1.01x (?)
ObjectiveCBridgeToNSDictionary 54831 53984 -1.5% 1.02x (?)
ObjectiveCBridgeToNSSet 47499 47035 -1.0% 1.01x (?)
ObjectiveCBridgeToNSString 1357 1342 -1.1% 1.01x (?)
ObserverClosure 6273 6354 +1.3% 0.99x
ObserverForwarderStruct 4378 4386 +0.2% 1.00x (?)
ObserverPartiallyAppliedMethod 7837 7804 -0.4% 1.00x
ObserverUnappliedMethod 7916 7905 -0.1% 1.00x (?)
OpenClose 579 569 -1.7% 1.02x
PartialApplyDynamicType 42939 41094 -4.3% 1.04x
Phonebook 20767 20119 -3.1% 1.03x
PointerArithmetics 125956 126026 +0.1% 1.00x (?)
PolymorphicCalls 6150 6111 -0.6% 1.01x (?)
PopFrontArray 4631 4621 -0.2% 1.00x (?)
PopFrontArrayGeneric 5834 5701 -2.3% 1.02x
PopFrontUnsafePointer 11308 11268 -0.4% 1.00x (?)
PrefixAnyCollection 13521 13587 +0.5% 1.00x
PrefixAnySeqCRangeIter 16580 16576 -0.0% 1.00x (?)
PrefixAnySeqCRangeIterLazy 16453 16432 -0.1% 1.00x (?)
PrefixAnySeqCntRange 13477 13602 +0.9% 0.99x
PrefixAnySeqCntRangeLazy 13627 13742 +0.8% 0.99x
PrefixAnySequence 9228 9171 -0.6% 1.01x (?)
PrefixAnySequenceLazy 9177 9186 +0.1% 1.00x (?)
PrefixArray 3904 3758 -3.7% 1.04x
PrefixArrayLazy 25383 25293 -0.4% 1.00x (?)
PrefixCountableRange 325 325 +0.0% 1.00x
PrefixCountableRangeLazy 25859 25922 +0.2% 1.00x
PrefixSequence 8865 8722 -1.6% 1.02x
PrefixSequenceLazy 8873 8825 -0.5% 1.01x (?)
PrefixWhileAnyCollection 24737 24716 -0.1% 1.00x (?)
PrefixWhileAnyCollectionLazy 15644 15741 +0.6% 0.99x (?)
PrefixWhileAnySeqCRangeIter 33393 33275 -0.4% 1.00x
PrefixWhileAnySeqCRangeIterLazy 15770 15839 +0.4% 1.00x
PrefixWhileAnySeqCntRange 24791 24806 +0.1% 1.00x (?)
PrefixWhileAnySeqCntRangeLazy 15674 15828 +1.0% 0.99x
PrefixWhileAnySequence 26653 26628 -0.1% 1.00x (?)
PrefixWhileAnySequenceLazy 9466 9424 -0.4% 1.00x
PrefixWhileArray 11514 11497 -0.1% 1.00x (?)
PrefixWhileArrayLazy 11896 11905 +0.1% 1.00x
PrefixWhileCountableRange 11780 11778 -0.0% 1.00x (?)
PrefixWhileCountableRangeLazy 15462 15433 -0.2% 1.00x
PrefixWhileSequence 26310 26160 -0.6% 1.01x
PrefixWhileSequenceLazy 9090 9067 -0.3% 1.00x (?)
Prims 9701 9659 -0.4% 1.00x (?)
PrimsSplit 9773 9942 +1.7% 0.98x
QueueConcrete 15271 15115 -1.0% 1.01x (?)
QueueGeneric 19205 19046 -0.8% 1.01x
RC4 16673 16551 -0.7% 1.01x
RGBHistogram 27122 26916 -0.8% 1.01x (?)
RGBHistogramOfObjects 96340 96372 +0.0% 1.00x (?)
RangeAssignment 2777 2804 +1.0% 0.99x (?)
RangeIterationSigned 16837 16360 -2.8% 1.03x (?)
RangeIterationSigned64 39391 39610 +0.6% 0.99x (?)
RangeIterationUnsigned 35103 34974 -0.4% 1.00x
RangeReplaceableCollectionPlusDefault 8152 8342 +2.3% 0.98x (?)
RecursiveOwnedParameter 7807 8005 +2.5% 0.98x
ReversedArray 13308 13352 +0.3% 1.00x (?)
ReversedBidirectional 42724 42668 -0.1% 1.00x (?)
ReversedDictionary 23085 22988 -0.4% 1.00x (?)
RomanNumbers 1205350 1219263 +1.2% 0.99x (?)
SetExclusiveOr 17188 17197 +0.1% 1.00x (?)
SetExclusiveOr_OfObjects 41675 41578 -0.2% 1.00x (?)
SetIntersect 8281 8199 -1.0% 1.01x
SetIntersect_OfObjects 12108 12126 +0.1% 1.00x (?)
SetIsSubsetOf 1338 1340 +0.1% 1.00x (?)
SetIsSubsetOf_OfObjects 1570 1563 -0.4% 1.00x (?)
SetUnion 11850 11842 -0.1% 1.00x (?)
SetUnion_OfObjects 29341 28957 -1.3% 1.01x (?)
SevenBoom 1677 1676 -0.1% 1.00x (?)
Sim2DArray 43637 43642 +0.0% 1.00x (?)
SortLargeExistentials 15736 15737 +0.0% 1.00x (?)
SortLettersInPlace 2798 2803 +0.2% 1.00x (?)
SortSortedStrings 1356 1335 -1.5% 1.02x
SortStrings 2481 2442 -1.6% 1.02x
SortStringsUnicode 16451 16504 +0.3% 1.00x
StackPromo 87930 89024 +1.2% 0.99x (?)
StaticArray 2605 2601 -0.2% 1.00x (?)
StrComplexWalk 6655 6658 +0.0% 1.00x (?)
StrToInt 57710 57514 -0.3% 1.00x
StringAdder 4749 4741 -0.2% 1.00x (?)
StringBuilder 6829 6873 +0.6% 0.99x (?)
StringBuilderLong 2737 2731 -0.2% 1.00x (?)
StringComparison_abnormal 1421 1419 -0.1% 1.00x (?)
StringComparison_ascii 9895 9892 -0.0% 1.00x (?)
StringComparison_emoji 3852 3841 -0.3% 1.00x (?)
StringComparison_fastPrenormal 13403 13449 +0.3% 1.00x (?)
StringComparison_latin1 9543 9650 +1.1% 0.99x (?)
StringComparison_longSharedPrefix 13070 13083 +0.1% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 6926 6924 -0.0% 1.00x (?)
StringComparison_slowerPrenormal 6796 6796 +0.0% 1.00x
StringComparison_zalgo 2856 2859 +0.1% 1.00x (?)
StringEdits 337624 337833 +0.1% 1.00x (?)
StringEnumRawValueInitialization 21227 20752 -2.2% 1.02x
StringFromLongWholeSubstring 23 23 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 201 200 -0.5% 1.00x
StringHasPrefixAscii 3088 2946 -4.6% 1.05x
StringHasPrefixUnicode 31115 31008 -0.3% 1.00x
StringHasSuffixAscii 3225 3174 -1.6% 1.02x
StringHasSuffixUnicode 88160 88253 +0.1% 1.00x (?)
StringMatch 33395 33031 -1.1% 1.01x
StringRemoveDupes 1404 1411 +0.5% 1.00x (?)
StringUTF16Builder 7871 8012 +1.8% 0.98x (?)
StringWalk 13149 12773 -2.9% 1.03x
StringWordBuilder 2512 2517 +0.2% 1.00x (?)
StringWordBuilderReservingCapacity 2172 2176 +0.2% 1.00x (?)
SubstringComparable 4193 4146 -1.1% 1.01x
SubstringFromLongString 24 24 +0.0% 1.00x
SubstringFromLongStringGeneric 105 106 +1.0% 0.99x
SuffixAnyCollection 4483 4535 +1.2% 0.99x
SuffixAnySeqCRangeIter 33561 33488 -0.2% 1.00x (?)
SuffixAnySeqCRangeIterLazy 33521 33457 -0.2% 1.00x
SuffixAnySeqCntRange 4505 4530 +0.6% 0.99x (?)
SuffixAnySeqCntRangeLazy 4513 4545 +0.7% 0.99x
SuffixAnySequence 25117 25070 -0.2% 1.00x (?)
SuffixAnySequenceLazy 25106 25031 -0.3% 1.00x (?)
SuffixCountableRange 112 111 -0.9% 1.01x
SuffixCountableRangeLazy 8636 8642 +0.1% 1.00x (?)
SuffixSequence 24985 24913 -0.3% 1.00x (?)
SuffixSequenceLazy 25206 24977 -0.9% 1.01x
SumUsingReduce 170287 170419 +0.1% 1.00x (?)
SumUsingReduceInto 166948 166759 -0.1% 1.00x (?)
SuperChars 217197 212121 -2.3% 1.02x
TwoSum 3937 3885 -1.3% 1.01x (?)
TypeFlood 162 169 +4.3% 0.96x (?)
UTF8Decode 30114 29898 -0.7% 1.01x
Walsh 12020 12009 -0.1% 1.00x (?)
WordCountHistogramASCII 48909 48291 -1.3% 1.01x
WordCountHistogramUTF16 104107 104472 +0.4% 1.00x (?)
WordCountUniqueASCII 8007 7983 -0.3% 1.00x (?)
WordCountUniqueUTF16 34132 34360 +0.7% 0.99x (?)
WordSplitASCII 25516 25586 +0.3% 1.00x (?)
WordSplitUTF16 27148 27103 -0.2% 1.00x (?)
XorLoop 23376 23362 -0.1% 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

@xwu xwu merged commit 905dd71 into swiftlang:master Feb 9, 2018
@xwu xwu deleted the floating-point-constants branch February 9, 2018 05:12
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