Skip to content

[Foundation] adjust inline of append and initialization functions #17027

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 2 commits into from
Jun 11, 2018

Conversation

phausler
Copy link
Contributor

@phausler phausler commented Jun 6, 2018

Use _copyContents(initialzing:) to avoid performance regressions while using generic collection/sequence APIs

@phausler phausler requested a review from airspeedswift June 6, 2018 20:48
@phausler
Copy link
Contributor Author

phausler commented Jun 6, 2018

@swift-ci please smoke test

@phausler
Copy link
Contributor Author

phausler commented Jun 6, 2018

@swift-ci please benchmark

… use _copyContents(initialzing:) to avoid performance regressions while using generic collection/sequence APIs
@phausler phausler force-pushed the data_sequence_perf_fix branch from d624c1b to 9a09ab4 Compare June 6, 2018 21:43
@phausler
Copy link
Contributor Author

phausler commented Jun 6, 2018

@swift-ci please smoke test

@phausler
Copy link
Contributor Author

phausler commented Jun 6, 2018

@swift-ci please benchmark

@phausler phausler requested a review from parkera June 6, 2018 21:48
@phausler
Copy link
Contributor Author

phausler commented Jun 6, 2018

@swift-ci please benchmark

@@ -1897,13 +1867,7 @@ extension Data {

/// Provides bridging functionality for struct Data to class NSData and vice-versa.

#if DEPLOYMENT_RUNTIME_SWIFT
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this change orthogonal to the copyContents one?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Correct but it allows me to iterate on sclf for validating this easily

var iter = endIterator
while let byte = iter.next() { self.append(byte) }
let backing = _DataStorage(capacity: Swift.max(elements.underestimatedCount, 1))
var (iter, endIndex) = elements._copyContents(initializing: UnsafeMutableBufferPointer(start: backing._bytes?.bindMemory(to: UInt8.self, capacity: backing._capacity), count: backing._capacity))
Copy link
Contributor

Choose a reason for hiding this comment

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

cc @atrick to double check the bind here

@@ -1260,30 +1238,20 @@ public struct Data : ReferenceConvertible, Equatable, Hashable, RandomAccessColl
}

// slightly faster paths for common sequences

@inlinable
Copy link
Contributor

Choose a reason for hiding this comment

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

Are you sure this @inlinable doesn't expose the _DataStorage type?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@airspeedswift was telling me this is ok (similar to how Array does it)

/// Initialize a `Data` with the contents of an Array.
///
/// - parameter bytes: An array of bytes to copy.
public init(bytes: Array<UInt8>) {
Copy link
Contributor

Choose a reason for hiding this comment

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

The Data perf tests have some cases that cover these specific types, right?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes it does

@swift-ci
Copy link
Contributor

swift-ci commented Jun 7, 2018

Build comment file:

Optimized (O)

Regression (7)
TEST OLD NEW DELTA SPEEDUP
DataAppendArray 4646 10459 +125.1% 0.44x
DictionarySwapAt 6257 7448 +19.0% 0.84x
ChainedFilterMap 1117 1262 +13.0% 0.89x
DataCount 30 33 +10.0% 0.91x
SubstringComparable 12 13 +8.3% 0.92x (?)
DictionaryRemove 3933 4164 +5.9% 0.94x
ByteSwap 90 95 +5.6% 0.95x
Improvement (9)
TEST OLD NEW DELTA SPEEDUP
DataAppendSequence 5997581 18370 -99.7% 326.49x
BinaryFloatingPointPropertiesBinade 28 23 -17.9% 1.22x
Sim2DArray 600 537 -10.5% 1.12x
ObjectiveCBridgeStubFromArrayOfNSString 31515 29571 -6.2% 1.07x (?)
BinaryFloatingPointPropertiesUlp 33 31 -6.1% 1.06x
StringComparison_ascii 963 910 -5.5% 1.06x
Chars 1091 1031 -5.5% 1.06x
DictionaryGroup 205 194 -5.4% 1.06x
FrequenciesUsingReduce 4680 4450 -4.9% 1.05x (?)
No Changes (424)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3524 3513 -0.3% 1.00x (?)
AnyHashableWithAClass 78160 78198 +0.0% 1.00x (?)
Array2D 2546 2545 -0.0% 1.00x (?)
ArrayAppend 946 946 +0.0% 1.00x
ArrayAppendArrayOfInt 673 672 -0.1% 1.00x (?)
ArrayAppendAscii 3380 3365 -0.4% 1.00x (?)
ArrayAppendAsciiSubstring 21677 21681 +0.0% 1.00x (?)
ArrayAppendFromGeneric 674 674 +0.0% 1.00x
ArrayAppendGenericStructs 1212 1209 -0.2% 1.00x (?)
ArrayAppendLatin1 36379 36336 -0.1% 1.00x (?)
ArrayAppendLatin1Substring 126148 126536 +0.3% 1.00x (?)
ArrayAppendLazyMap 1176 1176 +0.0% 1.00x
ArrayAppendOptionals 1210 1210 +0.0% 1.00x
ArrayAppendRepeatCol 1175 1174 -0.1% 1.00x (?)
ArrayAppendReserved 718 718 +0.0% 1.00x
ArrayAppendSequence 979 979 +0.0% 1.00x
ArrayAppendStrings 5548 5547 -0.0% 1.00x (?)
ArrayAppendToFromGeneric 674 674 +0.0% 1.00x
ArrayAppendToGeneric 674 673 -0.1% 1.00x (?)
ArrayAppendUTF16 35875 35758 -0.3% 1.00x (?)
ArrayAppendUTF16Substring 123363 124086 +0.6% 0.99x (?)
ArrayInClass 77 77 +0.0% 1.00x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 130 130 +0.0% 1.00x
ArrayOfGenericRef 3922 3913 -0.2% 1.00x (?)
ArrayOfPOD 156 156 +0.0% 1.00x
ArrayOfRef 3909 3907 -0.1% 1.00x (?)
ArrayPlusEqualArrayOfInt 674 673 -0.1% 1.00x (?)
ArrayPlusEqualFiveElementCollection 4754 4753 -0.0% 1.00x (?)
ArrayPlusEqualSingleElementCollection 947 945 -0.2% 1.00x (?)
ArrayPlusEqualThreeElements 1515 1514 -0.1% 1.00x (?)
ArraySubscript 1365 1374 +0.7% 0.99x (?)
ArrayValueProp 7 7 +0.0% 1.00x
ArrayValueProp2 7 7 +0.0% 1.00x
ArrayValueProp3 7 7 +0.0% 1.00x
ArrayValueProp4 7 7 +0.0% 1.00x
BinaryFloatingPointPropertiesNextUp 25 25 +0.0% 1.00x
BitCount 189 181 -4.2% 1.04x
COWArrayGuaranteedParameterOverhead 7782 7783 +0.0% 1.00x (?)
COWTree 4731 4722 -0.2% 1.00x (?)
CSVParsing 587591 587687 +0.0% 1.00x (?)
CSVParsingAlt 717506 715968 -0.2% 1.00x (?)
CSVParsingAltIndices 307704 305971 -0.6% 1.01x (?)
CStringLongAscii 3789 3833 +1.2% 0.99x (?)
CStringLongNonAscii 2117 2116 -0.0% 1.00x (?)
CStringShortAscii 3011 3007 -0.1% 1.00x (?)
Calculator 283 283 +0.0% 1.00x
CaptureProp 3677 3655 -0.6% 1.01x (?)
CharIndexing_ascii_unicodeScalars 14605 14636 +0.2% 1.00x (?)
CharIndexing_ascii_unicodeScalars_Backwards 14502 14415 -0.6% 1.01x (?)
CharIndexing_chinese_unicodeScalars 11060 11096 +0.3% 1.00x (?)
CharIndexing_chinese_unicodeScalars_Backwards 10988 10961 -0.2% 1.00x (?)
CharIndexing_japanese_unicodeScalars 17488 17513 +0.1% 1.00x (?)
CharIndexing_japanese_unicodeScalars_Backwards 17357 17314 -0.2% 1.00x (?)
CharIndexing_korean_unicodeScalars 14169 14198 +0.2% 1.00x (?)
CharIndexing_korean_unicodeScalars_Backwards 14067 14042 -0.2% 1.00x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 2648 2684 +1.4% 0.99x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2638 2635 -0.1% 1.00x (?)
CharIndexing_punctuated_unicodeScalars 3313 3349 +1.1% 0.99x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 3299 3297 -0.1% 1.00x (?)
CharIndexing_russian_unicodeScalars 12168 12206 +0.3% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 12087 12013 -0.6% 1.01x (?)
CharIndexing_tweet_unicodeScalars 28785 28821 +0.1% 1.00x (?)
CharIndexing_tweet_unicodeScalars_Backwards 28609 28708 +0.3% 1.00x (?)
CharIndexing_utf16_unicodeScalars 20523 20628 +0.5% 0.99x (?)
CharIndexing_utf16_unicodeScalars_Backwards 20923 20955 +0.2% 1.00x (?)
CharIteration_ascii_unicodeScalars 18504 18461 -0.2% 1.00x
CharIteration_ascii_unicodeScalars_Backwards 13543 13548 +0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars 14003 13970 -0.2% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 10257 10262 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars 22143 22106 -0.2% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 16216 16221 +0.0% 1.00x (?)
CharIteration_korean_unicodeScalars 17947 17908 -0.2% 1.00x (?)
CharIteration_korean_unicodeScalars_Backwards 13135 13139 +0.0% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars 3338 3299 -1.2% 1.01x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2449 2455 +0.2% 1.00x
CharIteration_punctuated_unicodeScalars 4208 4151 -1.4% 1.01x
CharIteration_punctuated_unicodeScalars_Backwards 3066 3071 +0.2% 1.00x (?)
CharIteration_russian_unicodeScalars 15416 15365 -0.3% 1.00x
CharIteration_russian_unicodeScalars_Backwards 11286 11289 +0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars 35970 35957 -0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars_Backwards 26754 26767 +0.0% 1.00x (?)
CharIteration_utf16_unicodeScalars 24741 24809 +0.3% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 16601 16696 +0.6% 0.99x (?)
CharacterLiteralsLarge 5369 5368 -0.0% 1.00x (?)
CharacterLiteralsSmall 195 197 +1.0% 0.99x
CharacterPropertiesFetch 4153 4119 -0.8% 1.01x (?)
CharacterPropertiesPrecomputed 941 928 -1.4% 1.01x (?)
CharacterPropertiesStashed 1365 1360 -0.4% 1.00x (?)
CharacterPropertiesStashedMemo 1425 1431 +0.4% 1.00x (?)
ClassArrayGetter 13 13 +0.0% 1.00x
Combos 442 441 -0.2% 1.00x (?)
DataAccessBytes 1024 1023 -0.1% 1.00x (?)
DataAppendBytes 4347 4442 +2.2% 0.98x (?)
DataAppendDataLargeToLarge 59662 60124 +0.8% 0.99x (?)
DataAppendDataLargeToMedium 31689 31622 -0.2% 1.00x (?)
DataAppendDataLargeToSmall 30751 30675 -0.2% 1.00x (?)
DataAppendDataMediumToLarge 33392 33684 +0.9% 0.99x (?)
DataAppendDataMediumToMedium 5952 5992 +0.7% 0.99x (?)
DataAppendDataMediumToSmall 5242 5296 +1.0% 0.99x (?)
DataAppendDataSmallToLarge 33291 33353 +0.2% 1.00x (?)
DataAppendDataSmallToMedium 5298 5381 +1.6% 0.98x (?)
DataAppendDataSmallToSmall 5078 5261 +3.6% 0.97x (?)
DataCopyBytes 393 403 +2.5% 0.98x (?)
DataMutateBytes 3479 3469 -0.3% 1.00x (?)
DataReplaceLarge 33207 33165 -0.1% 1.00x (?)
DataReplaceLargeBuffer 50859 51200 +0.7% 0.99x (?)
DataReplaceMedium 7037 6923 -1.6% 1.02x (?)
DataReplaceMediumBuffer 10306 9983 -3.1% 1.03x (?)
DataReplaceSmall 5052 4917 -2.7% 1.03x (?)
DataReplaceSmallBuffer 7723 7736 +0.2% 1.00x (?)
DataReset 2552 2549 -0.1% 1.00x (?)
DataSetCount 536 536 +0.0% 1.00x
DataSubscript 249 247 -0.8% 1.01x (?)
DictOfArraysToArrayOfDicts 717 715 -0.3% 1.00x (?)
Dictionary 458 459 +0.2% 1.00x (?)
Dictionary2 569 570 +0.2% 1.00x (?)
Dictionary2OfObjects 1874 1876 +0.1% 1.00x (?)
Dictionary3 202 204 +1.0% 0.99x
Dictionary3OfObjects 658 660 +0.3% 1.00x (?)
Dictionary4 314 301 -4.1% 1.04x
Dictionary4Legacy 667 667 +0.0% 1.00x
Dictionary4OfObjects 409 407 -0.5% 1.00x (?)
Dictionary4OfObjectsLegacy 860 861 +0.1% 1.00x (?)
DictionaryBridge 1056 1023 -3.1% 1.03x (?)
DictionaryCopy 95268 94621 -0.7% 1.01x
DictionaryFilter 94414 94290 -0.1% 1.00x (?)
DictionaryGroupOfObjects 1904 1900 -0.2% 1.00x (?)
DictionaryKeysContainsCocoa 37 36 -2.7% 1.03x (?)
DictionaryKeysContainsNative 29 28 -3.4% 1.04x (?)
DictionaryLiteral 1725 1722 -0.2% 1.00x (?)
DictionaryOfObjects 2140 2142 +0.1% 1.00x (?)
DictionaryRemoveOfObjects 23098 23116 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutation 252 240 -4.8% 1.05x
DictionarySubscriptDefaultMutationArray 541 539 -0.4% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 3614 3619 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 1563 1570 +0.4% 1.00x (?)
DictionarySwap 969 995 +2.7% 0.97x (?)
DictionarySwapAtOfObjects 46886 46901 +0.0% 1.00x (?)
DictionarySwapOfObjects 7833 7839 +0.1% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 75 75 +0.0% 1.00x
DropFirstAnyCollectionLazy 57985 57927 -0.1% 1.00x (?)
DropFirstAnySeqCRangeIter 23160 23137 -0.1% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 23103 23155 +0.2% 1.00x (?)
DropFirstAnySeqCntRange 37 37 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 37 36 -2.7% 1.03x
DropFirstAnySequence 4544 4551 +0.2% 1.00x (?)
DropFirstAnySequenceLazy 4543 4546 +0.1% 1.00x (?)
DropFirstArray 31 31 +0.0% 1.00x
DropFirstArrayLazy 31 31 +0.0% 1.00x
DropFirstCountableRange 31 31 +0.0% 1.00x
DropFirstCountableRangeLazy 31 31 +0.0% 1.00x
DropFirstSequence 2404 2405 +0.0% 1.00x (?)
DropFirstSequenceLazy 2484 2482 -0.1% 1.00x (?)
DropLastAnyCollection 27 27 +0.0% 1.00x
DropLastAnyCollectionLazy 19362 19350 -0.1% 1.00x (?)
DropLastAnySeqCRangeIter 3162 3172 +0.3% 1.00x (?)
DropLastAnySeqCRangeIterLazy 3160 3173 +0.4% 1.00x (?)
DropLastAnySeqCntRange 12 12 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 12 12 +0.0% 1.00x
DropLastAnySequence 4402 4422 +0.5% 1.00x (?)
DropLastAnySequenceLazy 4509 4498 -0.2% 1.00x (?)
DropLastCountableRange 10 10 +0.0% 1.00x
DropLastCountableRangeLazy 10 10 +0.0% 1.00x
DropLastSequence 567 569 +0.4% 1.00x (?)
DropLastSequenceLazy 568 569 +0.2% 1.00x (?)
DropWhileAnyCollection 96 96 +0.0% 1.00x
DropWhileAnyCollectionLazy 112 112 +0.0% 1.00x
DropWhileAnySeqCRangeIter 15396 15354 -0.3% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 112 112 +0.0% 1.00x
DropWhileAnySeqCntRange 45 45 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 112 112 +0.0% 1.00x
DropWhileAnySequence 4349 4360 +0.3% 1.00x (?)
DropWhileAnySequenceLazy 1665 1665 +0.0% 1.00x
DropWhileArrayLazy 79 79 +0.0% 1.00x
DropWhileCountableRange 32 32 +0.0% 1.00x
DropWhileCountableRangeLazy 94 94 +0.0% 1.00x
DropWhileSequence 1978 1978 +0.0% 1.00x
DropWhileSequenceLazy 79 79 +0.0% 1.00x
EqualStringSubstring 43 43 +0.0% 1.00x
EqualSubstringString 43 43 +0.0% 1.00x
EqualSubstringSubstring 43 43 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 43 43 +0.0% 1.00x
ErrorHandling 1074 1077 +0.3% 1.00x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FatCompactMap 181085 180674 -0.2% 1.00x (?)
FilterEvenUsingReduce 1169 1163 -0.5% 1.01x (?)
FilterEvenUsingReduceInto 135 134 -0.7% 1.01x (?)
FloatingPointPrinting_Double_description_small 21000 20980 -0.1% 1.00x (?)
FloatingPointPrinting_Double_description_uniform 20679 20619 -0.3% 1.00x (?)
FloatingPointPrinting_Double_interpolated 58426 58498 +0.1% 1.00x (?)
FloatingPointPrinting_Float80_description_small 27176 27149 -0.1% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 26356 26398 +0.2% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 61168 60945 -0.4% 1.00x (?)
FloatingPointPrinting_Float_description_small 4832 4818 -0.3% 1.00x (?)
FloatingPointPrinting_Float_description_uniform 4804 4780 -0.5% 1.01x (?)
FloatingPointPrinting_Float_interpolated 35946 35970 +0.1% 1.00x (?)
FrequenciesUsingReduceInto 1378 1352 -1.9% 1.02x (?)
Hanoi 1980 1987 +0.4% 1.00x (?)
HashTest 859 865 +0.7% 0.99x (?)
Histogram 658 631 -4.1% 1.04x
Integrate 300 300 +0.0% 1.00x
IterateData 1386 1426 +2.9% 0.97x
Join 148 148 +0.0% 1.00x
LazilyFilteredArrayContains 32527 32524 -0.0% 1.00x (?)
LazilyFilteredArrays 59165 59192 +0.0% 1.00x (?)
LazilyFilteredRange 3462 3465 +0.1% 1.00x (?)
LessSubstringSubstring 43 43 +0.0% 1.00x
LessSubstringSubstringGenericComparable 43 43 +0.0% 1.00x
LinkedList 6794 6781 -0.2% 1.00x (?)
LuhnAlgoEager 391 390 -0.3% 1.00x (?)
LuhnAlgoLazy 392 393 +0.3% 1.00x (?)
MapReduce 357 357 +0.0% 1.00x
MapReduceAnyCollection 385 385 +0.0% 1.00x
MapReduceAnyCollectionShort 2024 2023 -0.0% 1.00x (?)
MapReduceClass 2694 2696 +0.1% 1.00x (?)
MapReduceClassShort 4091 4089 -0.0% 1.00x (?)
MapReduceLazyCollection 12 12 +0.0% 1.00x
MapReduceLazyCollectionShort 30 30 +0.0% 1.00x
MapReduceLazySequence 77 77 +0.0% 1.00x
MapReduceSequence 409 408 -0.2% 1.00x (?)
MapReduceShort 1790 1801 +0.6% 0.99x (?)
MapReduceShortString 19 19 +0.0% 1.00x
MapReduceString 43 43 +0.0% 1.00x
Memset 191 191 +0.0% 1.00x
MonteCarloE 9175 9300 +1.4% 0.99x
MonteCarloPi 38307 38522 +0.6% 0.99x (?)
NSDictionaryCastToSwift 6138 6124 -0.2% 1.00x (?)
NSError 148 147 -0.7% 1.01x (?)
NSStringConversion 640 652 +1.9% 0.98x (?)
NibbleSort 3315 3315 +0.0% 1.00x
NopDeinit 30013 28917 -3.7% 1.04x
ObjectAllocation 118 118 +0.0% 1.00x
ObjectiveCBridgeFromNSArrayAnyObject 23034 22344 -3.0% 1.03x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 4211 4131 -1.9% 1.02x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 40956 41079 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 39342 39380 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 100822 102989 +2.1% 0.98x (?)
ObjectiveCBridgeFromNSSetAnyObject 43409 43956 +1.3% 0.99x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4419 4440 +0.5% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 58812 58737 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSString 1121 1105 -1.4% 1.01x (?)
ObjectiveCBridgeFromNSStringForced 2421 2421 +0.0% 1.00x
ObjectiveCBridgeStubDataAppend 5573 5489 -1.5% 1.02x (?)
ObjectiveCBridgeStubDateMutation 359 359 +0.0% 1.00x
ObjectiveCBridgeStubFromNSDate 5557 5546 -0.2% 1.00x (?)
ObjectiveCBridgeStubFromNSString 935 936 +0.1% 1.00x (?)
ObjectiveCBridgeStubFromNSStringRef 139 139 +0.0% 1.00x
ObjectiveCBridgeStubNSDataAppend 2277 2298 +0.9% 0.99x (?)
ObjectiveCBridgeStubNSDateMutationRef 11970 12113 +1.2% 0.99x (?)
ObjectiveCBridgeStubToArrayOfNSString 36115 36520 +1.1% 0.99x (?)
ObjectiveCBridgeStubToNSDate 13466 13455 -0.1% 1.00x (?)
ObjectiveCBridgeStubToNSDateRef 3066 3072 +0.2% 1.00x (?)
ObjectiveCBridgeStubToNSString 2138 2135 -0.1% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 103 103 +0.0% 1.00x
ObjectiveCBridgeStubURLAppendPath 253848 246369 -2.9% 1.03x (?)
ObjectiveCBridgeStubURLAppendPathRef 250644 252571 +0.8% 0.99x (?)
ObjectiveCBridgeToNSArray 13632 13759 +0.9% 0.99x (?)
ObjectiveCBridgeToNSDictionary 23988 23338 -2.7% 1.03x (?)
ObjectiveCBridgeToNSSet 14977 14740 -1.6% 1.02x (?)
ObjectiveCBridgeToNSString 444 444 +0.0% 1.00x
ObserverClosure 1926 1934 +0.4% 1.00x (?)
ObserverForwarderStruct 1032 1040 +0.8% 0.99x (?)
ObserverPartiallyAppliedMethod 3377 3381 +0.1% 1.00x (?)
ObserverUnappliedMethod 2166 2159 -0.3% 1.00x (?)
OpaqueConsumingUsers 3748 3749 +0.0% 1.00x (?)
OpenClose 59 61 +3.4% 0.97x
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 6073 6009 -1.1% 1.01x (?)
PointerArithmetics 28253 28247 -0.0% 1.00x (?)
PolymorphicCalls 22 22 +0.0% 1.00x
PopFrontArray 1756 1696 -3.4% 1.04x (?)
PopFrontArrayGeneric 1774 1708 -3.7% 1.04x (?)
PopFrontUnsafePointer 8554 8194 -4.2% 1.04x (?)
PrefixAnyCollection 74 75 +1.4% 0.99x (?)
PrefixAnyCollectionLazy 58049 57958 -0.2% 1.00x (?)
PrefixAnySeqCRangeIter 15145 15160 +0.1% 1.00x (?)
PrefixAnySeqCRangeIterLazy 15176 15155 -0.1% 1.00x (?)
PrefixAnySeqCntRange 25 25 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 25 25 +0.0% 1.00x
PrefixAnySequence 3882 3883 +0.0% 1.00x (?)
PrefixAnySequenceLazy 3883 3884 +0.0% 1.00x (?)
PrefixArray 31 31 +0.0% 1.00x
PrefixArrayLazy 31 31 +0.0% 1.00x
PrefixCountableRange 31 31 +0.0% 1.00x
PrefixCountableRangeLazy 31 31 +0.0% 1.00x
PrefixSequence 1986 1986 +0.0% 1.00x
PrefixSequenceLazy 2041 2041 +0.0% 1.00x
PrefixWhileAnyCollection 138 138 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 81 81 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 7751 7796 +0.6% 0.99x (?)
PrefixWhileAnySeqCRangeIterLazy 65 65 +0.0% 1.00x
PrefixWhileAnySeqCntRange 53 53 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 81 81 +0.0% 1.00x
PrefixWhileAnySequence 8818 8812 -0.1% 1.00x (?)
PrefixWhileAnySequenceLazy 1249 1249 +0.0% 1.00x
PrefixWhileArray 79 79 +0.0% 1.00x
PrefixWhileArrayLazy 63 63 +0.0% 1.00x
PrefixWhileCountableRange 32 33 +3.1% 0.97x
PrefixWhileCountableRangeLazy 31 31 +0.0% 1.00x
PrefixWhileSequence 324 324 +0.0% 1.00x
PrefixWhileSequenceLazy 47 47 +0.0% 1.00x
Prims 820 816 -0.5% 1.00x (?)
PrimsSplit 818 816 -0.2% 1.00x (?)
QueueConcrete 1027 1024 -0.3% 1.00x (?)
QueueGeneric 1028 1025 -0.3% 1.00x
RC4 151 151 +0.0% 1.00x
RGBHistogram 2861 2888 +0.9% 0.99x
RGBHistogramOfObjects 21267 21274 +0.0% 1.00x (?)
Radix2CooleyTukey 11044 11053 +0.1% 1.00x (?)
Radix2CooleyTukeyf 7910 7934 +0.3% 1.00x (?)
RandomDoubleDef 24277 24285 +0.0% 1.00x (?)
RandomDoubleLCG 2592 2597 +0.2% 1.00x (?)
RandomIntegersDef 22046 22080 +0.2% 1.00x (?)
RandomIntegersLCG 891 892 +0.1% 1.00x (?)
RandomShuffleDef 727420 726475 -0.1% 1.00x (?)
RandomShuffleLCG 105974 106345 +0.4% 1.00x (?)
RangeAssignment 301 301 +0.0% 1.00x
RangeIterationSigned 179 179 +0.0% 1.00x
RangeReplaceableCollectionPlusDefault 908 899 -1.0% 1.01x (?)
RecursiveOwnedParameter 103 103 +0.0% 1.00x
RemoveWhereFilterInts 41 41 +0.0% 1.00x
RemoveWhereFilterString 219 219 +0.0% 1.00x
RemoveWhereFilterStrings 389 390 +0.3% 1.00x (?)
RemoveWhereMoveInts 13 13 +0.0% 1.00x
RemoveWhereMoveStrings 633 635 +0.3% 1.00x (?)
RemoveWhereQuadraticInts 1158 1157 -0.1% 1.00x (?)
RemoveWhereQuadraticString 335 334 -0.3% 1.00x (?)
RemoveWhereQuadraticStrings 2476 2475 -0.0% 1.00x (?)
RemoveWhereSwapInts 17 17 +0.0% 1.00x
RemoveWhereSwapStrings 771 770 -0.1% 1.00x (?)
ReversedArray 51 51 +0.0% 1.00x
ReversedBidirectional 15064 15089 +0.2% 1.00x (?)
ReversedDictionary 207 212 +2.4% 0.98x (?)
RomanNumbers 71407 72564 +1.6% 0.98x
SequenceAlgosAnySequence 10787 10783 -0.0% 1.00x (?)
SequenceAlgosArray 1386 1386 +0.0% 1.00x
SequenceAlgosContiguousArray 1386 1386 +0.0% 1.00x
SequenceAlgosList 1212 1210 -0.2% 1.00x (?)
SequenceAlgosRange 2311 2311 +0.0% 1.00x
SequenceAlgosUnfoldSequence 989 988 -0.1% 1.00x (?)
SetExclusiveOr 4480 4625 +3.2% 0.97x
SetExclusiveOr_OfObjects 10526 10490 -0.3% 1.00x (?)
SetIntersect 622 624 +0.3% 1.00x (?)
SetIntersect_OfObjects 1571 1577 +0.4% 1.00x (?)
SetIsSubsetOf 309 309 +0.0% 1.00x
SetIsSubsetOf_OfObjects 395 405 +2.5% 0.98x
SetUnion 4009 3985 -0.6% 1.01x (?)
SetUnion_OfObjects 9100 9057 -0.5% 1.00x (?)
SevenBoom 764 761 -0.4% 1.00x (?)
SortLargeExistentials 4947 4912 -0.7% 1.01x
SortLettersInPlace 889 888 -0.1% 1.00x (?)
SortSortedStrings 789 768 -2.7% 1.03x
SortStrings 1614 1588 -1.6% 1.02x
SortStringsUnicode 2321 2334 +0.6% 0.99x (?)
StackPromo 22365 22367 +0.0% 1.00x (?)
StaticArray 8 8 +0.0% 1.00x
StrComplexWalk 1592 1592 +0.0% 1.00x
StrToInt 2931 2846 -2.9% 1.03x
StringAdder 523 525 +0.4% 1.00x (?)
StringBuilder 499 505 +1.2% 0.99x
StringBuilderLong 1127 1117 -0.9% 1.01x (?)
StringBuilderSmallReservingCapacity 516 522 +1.2% 0.99x (?)
StringBuilderWithLongSubstring 1300 1298 -0.2% 1.00x (?)
StringComparison_abnormal 691 691 +0.0% 1.00x
StringComparison_emoji 759 757 -0.3% 1.00x (?)
StringComparison_fastPrenormal 784 785 +0.1% 1.00x (?)
StringComparison_latin1 617 615 -0.3% 1.00x (?)
StringComparison_longSharedPrefix 860 861 +0.1% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 1494 1501 +0.5% 1.00x (?)
StringComparison_slowerPrenormal 1604 1606 +0.1% 1.00x (?)
StringComparison_zalgo 108651 108594 -0.1% 1.00x (?)
StringEdits 151612 149945 -1.1% 1.01x (?)
StringEnumRawValueInitialization 775 773 -0.3% 1.00x (?)
StringEqualPointerComparison 256 256 +0.0% 1.00x
StringFromLongWholeSubstring 19 19 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 19 19 +0.0% 1.00x
StringHasPrefixAscii 2003 2067 +3.2% 0.97x
StringHasPrefixUnicode 89183 88937 -0.3% 1.00x (?)
StringHasSuffixAscii 2003 2029 +1.3% 0.99x (?)
StringHasSuffixUnicode 89092 89360 +0.3% 1.00x (?)
StringInterpolation 8589 8581 -0.1% 1.00x (?)
StringInterpolationManySmallSegments 17019 16958 -0.4% 1.00x (?)
StringInterpolationSmall 3811 3835 +0.6% 0.99x (?)
StringMatch 11151 11204 +0.5% 1.00x (?)
StringRemoveDupes 443 436 -1.6% 1.02x (?)
StringUTF16Builder 2404 2380 -1.0% 1.01x (?)
StringUTF16SubstringBuilder 5275 5225 -0.9% 1.01x (?)
StringWalk 1285 1293 +0.6% 0.99x (?)
StringWithCString 40000 39996 -0.0% 1.00x (?)
StringWordBuilder 2254 2270 +0.7% 0.99x (?)
StringWordBuilderReservingCapacity 1694 1701 +0.4% 1.00x (?)
SubstringEqualString 549 548 -0.2% 1.00x (?)
SubstringEquatable 1283 1284 +0.1% 1.00x (?)
SubstringFromLongString 9 9 +0.0% 1.00x
SubstringFromLongStringGeneric 66 66 +0.0% 1.00x
SuffixAnyCollection 27 28 +3.7% 0.96x
SuffixAnyCollectionLazy 19349 19332 -0.1% 1.00x (?)
SuffixAnySeqCRangeIter 3361 3357 -0.1% 1.00x (?)
SuffixAnySeqCRangeIterLazy 3364 3358 -0.2% 1.00x (?)
SuffixAnySeqCntRange 18 18 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 18 18 +0.0% 1.00x
SuffixAnySequence 4396 4424 +0.6% 0.99x
SuffixAnySequenceLazy 4490 4510 +0.4% 1.00x (?)
SuffixCountableRange 10 10 +0.0% 1.00x
SuffixCountableRangeLazy 10 10 +0.0% 1.00x
SuffixSequence 3211 3216 +0.2% 1.00x (?)
SuffixSequenceLazy 3208 3210 +0.1% 1.00x (?)
SumUsingReduce 87 87 +0.0% 1.00x
SumUsingReduceInto 91 91 +0.0% 1.00x
SuperChars 13953 13949 -0.0% 1.00x (?)
TwoSum 1369 1324 -3.3% 1.03x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 267 266 -0.4% 1.00x
Walsh 387 386 -0.3% 1.00x (?)
WordCountHistogramASCII 7132 7088 -0.6% 1.01x (?)
WordCountHistogramUTF16 12849 12810 -0.3% 1.00x (?)
WordCountUniqueASCII 1844 1837 -0.4% 1.00x (?)
WordCountUniqueUTF16 6725 6643 -1.2% 1.01x (?)
WordSplitASCII 5932 5879 -0.9% 1.01x (?)
WordSplitUTF16 7605 7539 -0.9% 1.01x (?)
XorLoop 344 337 -2.0% 1.02x

Unoptimized (Onone)

Regression (8)
TEST OLD NEW DELTA SPEEDUP
DataAppendArray 4894 13706 +180.1% 0.36x
DictionaryKeysContainsNative 52 68 +30.8% 0.76x (?)
SuffixAnySeqCntRange 4651 5621 +20.9% 0.83x (?)
BinaryFloatingPointPropertiesBinade 77 89 +15.6% 0.87x
StringBuilderWithLongSubstring 3328 3747 +12.6% 0.89x (?)
BinaryFloatingPointPropertiesNextUp 119 128 +7.6% 0.93x
PointerArithmetics 110457 118126 +6.9% 0.94x
StringHasPrefixAscii 2835 3006 +6.0% 0.94x
Improvement (12)
TEST OLD NEW DELTA SPEEDUP
DataAppendSequence 6596291 1763959 -73.3% 3.74x
DropWhileAnySeqCRangeIter 24745 22189 -10.3% 1.12x (?)
FloatingPointPrinting_Double_interpolated 99919 92371 -7.6% 1.08x
DataReplaceSmallBuffer 8532 7902 -7.4% 1.08x (?)
CharIndexing_chinese_unicodeScalars_Backwards 265923 247036 -7.1% 1.08x (?)
DataReplaceMediumBuffer 10793 10028 -7.1% 1.08x (?)
PopFrontUnsafePointer 9994 9351 -6.4% 1.07x (?)
RGBHistogramOfObjects 75487 70933 -6.0% 1.06x
ObjectiveCBridgeFromNSSetAnyObjectForced 5410 5110 -5.5% 1.06x (?)
RandomDoubleDef 81802 77334 -5.5% 1.06x (?)
StringBuilderLong 1350 1279 -5.3% 1.06x (?)
COWArrayGuaranteedParameterOverhead 13188 12499 -5.2% 1.06x (?)
No Changes (420)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 4785 4798 +0.3% 1.00x (?)
AnyHashableWithAClass 92497 92627 +0.1% 1.00x (?)
Array2D 559588 559982 +0.1% 1.00x (?)
ArrayAppend 4067 4070 +0.1% 1.00x (?)
ArrayAppendArrayOfInt 727 726 -0.1% 1.00x (?)
ArrayAppendAscii 23156 23154 -0.0% 1.00x (?)
ArrayAppendAsciiSubstring 62847 63044 +0.3% 1.00x (?)
ArrayAppendFromGeneric 732 732 +0.0% 1.00x
ArrayAppendGenericStructs 1270 1271 +0.1% 1.00x (?)
ArrayAppendLatin1 56873 56743 -0.2% 1.00x (?)
ArrayAppendLatin1Substring 143008 143199 +0.1% 1.00x (?)
ArrayAppendLazyMap 148522 148378 -0.1% 1.00x (?)
ArrayAppendOptionals 1270 1270 +0.0% 1.00x
ArrayAppendRepeatCol 169337 169317 -0.0% 1.00x (?)
ArrayAppendReserved 3835 3835 +0.0% 1.00x
ArrayAppendSequence 94270 94551 +0.3% 1.00x (?)
ArrayAppendStrings 5647 5628 -0.3% 1.00x (?)
ArrayAppendToFromGeneric 732 729 -0.4% 1.00x (?)
ArrayAppendToGeneric 735 735 +0.0% 1.00x
ArrayAppendUTF16 56644 56673 +0.1% 1.00x (?)
ArrayAppendUTF16Substring 140714 140450 -0.2% 1.00x (?)
ArrayInClass 5600 5606 +0.1% 1.00x (?)
ArrayLiteral 1605 1608 +0.2% 1.00x (?)
ArrayOfGenericPOD2 960 959 -0.1% 1.00x (?)
ArrayOfGenericRef 9404 9395 -0.1% 1.00x (?)
ArrayOfPOD 680 678 -0.3% 1.00x
ArrayOfRef 8621 8623 +0.0% 1.00x (?)
ArrayPlusEqualArrayOfInt 729 728 -0.1% 1.00x (?)
ArrayPlusEqualFiveElementCollection 197215 197254 +0.0% 1.00x (?)
ArrayPlusEqualSingleElementCollection 195407 194895 -0.3% 1.00x (?)
ArrayPlusEqualThreeElements 8044 7977 -0.8% 1.01x (?)
ArraySubscript 96657 97407 +0.8% 0.99x
ArrayValueProp 3288 3283 -0.2% 1.00x (?)
ArrayValueProp2 13536 13480 -0.4% 1.00x (?)
ArrayValueProp3 3720 3745 +0.7% 0.99x (?)
ArrayValueProp4 3701 3699 -0.1% 1.00x (?)
BinaryFloatingPointPropertiesUlp 120 119 -0.8% 1.01x
BitCount 8024 8022 -0.0% 1.00x (?)
ByteSwap 8781 8655 -1.4% 1.01x
COWTree 10369 10519 +1.4% 0.99x (?)
CSVParsing 2465118 2460268 -0.2% 1.00x (?)
CSVParsingAlt 1314793 1283236 -2.4% 1.02x (?)
CSVParsingAltIndices 2093940 2158896 +3.1% 0.97x (?)
CStringLongAscii 3868 3904 +0.9% 0.99x (?)
CStringLongNonAscii 2247 2272 +1.1% 0.99x (?)
CStringShortAscii 5734 5762 +0.5% 1.00x (?)
Calculator 824 839 +1.8% 0.98x
CaptureProp 253935 254664 +0.3% 1.00x (?)
ChainedFilterMap 206547 206808 +0.1% 1.00x (?)
CharIndexing_ascii_unicodeScalars 286255 295521 +3.2% 0.97x (?)
CharIndexing_ascii_unicodeScalars_Backwards 327104 327757 +0.2% 1.00x (?)
CharIndexing_chinese_unicodeScalars 217691 216495 -0.5% 1.01x (?)
CharIndexing_japanese_unicodeScalars 346008 342710 -1.0% 1.01x (?)
CharIndexing_japanese_unicodeScalars_Backwards 399459 401344 +0.5% 1.00x (?)
CharIndexing_korean_unicodeScalars 278279 277673 -0.2% 1.00x (?)
CharIndexing_korean_unicodeScalars_Backwards 317878 318409 +0.2% 1.00x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 50834 51136 +0.6% 0.99x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 57070 57408 +0.6% 0.99x (?)
CharIndexing_punctuated_unicodeScalars 63912 63790 -0.2% 1.00x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 72441 72530 +0.1% 1.00x (?)
CharIndexing_russian_unicodeScalars 238862 238307 -0.2% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 272415 271729 -0.3% 1.00x (?)
CharIndexing_tweet_unicodeScalars 565908 564958 -0.2% 1.00x (?)
CharIndexing_tweet_unicodeScalars_Backwards 657569 654177 -0.5% 1.01x (?)
CharIndexing_utf16_unicodeScalars 253129 252243 -0.4% 1.00x (?)
CharIndexing_utf16_unicodeScalars_Backwards 284125 288201 +1.4% 0.99x (?)
CharIteration_ascii_unicodeScalars 132080 132453 +0.3% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 225087 225087 +0.0% 1.00x
CharIteration_chinese_unicodeScalars 100251 100256 +0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 169840 169867 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars 158694 158950 +0.2% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 270439 270480 +0.0% 1.00x (?)
CharIteration_korean_unicodeScalars 128905 128544 -0.3% 1.00x (?)
CharIteration_korean_unicodeScalars_Backwards 217701 218203 +0.2% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars 23497 23629 +0.6% 0.99x (?)
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 39157 39378 +0.6% 0.99x (?)
CharIteration_punctuated_unicodeScalars 29645 29640 -0.0% 1.00x (?)
CharIteration_punctuated_unicodeScalars_Backwards 49598 49698 +0.2% 1.00x (?)
CharIteration_russian_unicodeScalars 109725 110626 +0.8% 0.99x (?)
CharIteration_russian_unicodeScalars_Backwards 187369 188040 +0.4% 1.00x (?)
CharIteration_tweet_unicodeScalars 260940 262603 +0.6% 0.99x
CharIteration_tweet_unicodeScalars_Backwards 445921 447988 +0.5% 1.00x (?)
CharIteration_utf16_unicodeScalars 118244 118884 +0.5% 0.99x (?)
CharIteration_utf16_unicodeScalars_Backwards 205776 206793 +0.5% 1.00x (?)
CharacterLiteralsLarge 5210 5242 +0.6% 0.99x (?)
CharacterLiteralsSmall 612 631 +3.1% 0.97x
CharacterPropertiesFetch 5096 5246 +2.9% 0.97x (?)
CharacterPropertiesPrecomputed 3171 3185 +0.4% 1.00x (?)
CharacterPropertiesStashed 2115 2146 +1.5% 0.99x (?)
CharacterPropertiesStashedMemo 4098 4161 +1.5% 0.98x (?)
Chars 30801 30824 +0.1% 1.00x
ClassArrayGetter 864 864 +0.0% 1.00x
Combos 1928 1986 +3.0% 0.97x (?)
DataAccessBytes 2092 2060 -1.5% 1.02x (?)
DataAppendBytes 4454 4656 +4.5% 0.96x (?)
DataAppendDataLargeToLarge 60382 61708 +2.2% 0.98x (?)
DataAppendDataLargeToMedium 31890 31979 +0.3% 1.00x (?)
DataAppendDataLargeToSmall 31022 30893 -0.4% 1.00x (?)
DataAppendDataMediumToLarge 33999 34510 +1.5% 0.99x (?)
DataAppendDataMediumToMedium 5952 5930 -0.4% 1.00x (?)
DataAppendDataMediumToSmall 5453 5290 -3.0% 1.03x
DataAppendDataSmallToLarge 33306 33015 -0.9% 1.01x (?)
DataAppendDataSmallToMedium 5678 5568 -1.9% 1.02x (?)
DataAppendDataSmallToSmall 5247 5182 -1.2% 1.01x (?)
DataCopyBytes 408 404 -1.0% 1.01x (?)
DataCount 200 200 +0.0% 1.00x
DataMutateBytes 4640 4577 -1.4% 1.01x (?)
DataReplaceLarge 33268 34612 +4.0% 0.96x (?)
DataReplaceLargeBuffer 51014 51797 +1.5% 0.98x (?)
DataReplaceMedium 7342 7118 -3.1% 1.03x (?)
DataReplaceSmall 5158 4974 -3.6% 1.04x (?)
DataReset 2561 2556 -0.2% 1.00x (?)
DataSetCount 506 512 +1.2% 0.99x (?)
DataSubscript 398 398 +0.0% 1.00x
DictOfArraysToArrayOfDicts 3071 3092 +0.7% 0.99x (?)
Dictionary 1928 1932 +0.2% 1.00x (?)
Dictionary2 1149 1148 -0.1% 1.00x (?)
Dictionary2OfObjects 3892 3923 +0.8% 0.99x (?)
Dictionary3 747 746 -0.1% 1.00x (?)
Dictionary3OfObjects 1876 1874 -0.1% 1.00x (?)
Dictionary4 1080 1086 +0.6% 0.99x (?)
Dictionary4Legacy 1344 1346 +0.1% 1.00x (?)
Dictionary4OfObjects 1607 1680 +4.5% 0.96x (?)
Dictionary4OfObjectsLegacy 1898 1983 +4.5% 0.96x
DictionaryBridge 1161 1124 -3.2% 1.03x (?)
DictionaryCopy 275373 274507 -0.3% 1.00x (?)
DictionaryFilter 285725 285989 +0.1% 1.00x (?)
DictionaryGroup 3945 3942 -0.1% 1.00x (?)
DictionaryGroupOfObjects 6205 6386 +2.9% 0.97x (?)
DictionaryKeysContainsCocoa 58 60 +3.4% 0.97x (?)
DictionaryLiteral 8278 8316 +0.5% 1.00x (?)
DictionaryOfObjects 5166 5316 +2.9% 0.97x (?)
DictionaryRemove 15138 15126 -0.1% 1.00x (?)
DictionaryRemoveOfObjects 48566 47712 -1.8% 1.02x (?)
DictionarySubscriptDefaultMutation 1782 1788 +0.3% 1.00x (?)
DictionarySubscriptDefaultMutationArray 2013 2015 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 8637 8455 -2.1% 1.02x (?)
DictionarySubscriptDefaultMutationOfObjects 4817 4836 +0.4% 1.00x (?)
DictionarySwap 4408 4408 +0.0% 1.00x
DictionarySwapAt 28954 29009 +0.2% 1.00x (?)
DictionarySwapAtOfObjects 102362 102268 -0.1% 1.00x (?)
DictionarySwapOfObjects 17667 17328 -1.9% 1.02x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 13924 13905 -0.1% 1.00x (?)
DropFirstAnyCollectionLazy 101024 102150 +1.1% 0.99x (?)
DropFirstAnySeqCRangeIter 24986 25101 +0.5% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 24979 25025 +0.2% 1.00x (?)
DropFirstAnySeqCntRange 13894 13871 -0.2% 1.00x (?)
DropFirstAnySeqCntRangeLazy 13887 13868 -0.1% 1.00x (?)
DropFirstAnySequence 11672 11634 -0.3% 1.00x (?)
DropFirstAnySequenceLazy 11719 11711 -0.1% 1.00x (?)
DropFirstArray 3025 3022 -0.1% 1.00x (?)
DropFirstArrayLazy 26272 26230 -0.2% 1.00x (?)
DropFirstCountableRange 309 311 +0.6% 0.99x (?)
DropFirstCountableRangeLazy 31168 31111 -0.2% 1.00x (?)
DropFirstSequence 11289 11395 +0.9% 0.99x (?)
DropFirstSequenceLazy 11161 11121 -0.4% 1.00x (?)
DropLastAnyCollection 4650 4650 +0.0% 1.00x
DropLastAnyCollectionLazy 33437 32378 -3.2% 1.03x (?)
DropLastAnySeqCRangeIter 38082 38163 +0.2% 1.00x (?)
DropLastAnySeqCRangeIterLazy 38153 38148 -0.0% 1.00x (?)
DropLastAnySeqCntRange 4646 4651 +0.1% 1.00x (?)
DropLastAnySeqCntRangeLazy 4655 4647 -0.2% 1.00x (?)
DropLastAnySequence 26332 26442 +0.4% 1.00x (?)
DropLastAnySequenceLazy 26326 26153 -0.7% 1.01x
DropLastCountableRange 107 108 +0.9% 0.99x
DropLastCountableRangeLazy 10394 10402 +0.1% 1.00x (?)
DropLastSequence 26084 26102 +0.1% 1.00x (?)
DropLastSequenceLazy 26190 26312 +0.5% 1.00x (?)
DropWhileAnyCollection 18006 17998 -0.0% 1.00x (?)
DropWhileAnyCollectionLazy 24229 24549 +1.3% 0.99x (?)
DropWhileAnySeqCRangeIterLazy 24086 24085 -0.0% 1.00x (?)
DropWhileAnySeqCntRange 18017 18016 -0.0% 1.00x (?)
DropWhileAnySeqCntRangeLazy 24114 24200 +0.4% 1.00x (?)
DropWhileAnySequence 12360 12323 -0.3% 1.00x (?)
DropWhileAnySequenceLazy 11114 11212 +0.9% 0.99x (?)
DropWhileArrayLazy 12229 12233 +0.0% 1.00x (?)
DropWhileCountableRange 4421 4423 +0.0% 1.00x (?)
DropWhileCountableRangeLazy 22808 22883 +0.3% 1.00x (?)
DropWhileSequence 11926 11921 -0.0% 1.00x (?)
DropWhileSequenceLazy 11068 11149 +0.7% 0.99x
EqualStringSubstring 64 64 +0.0% 1.00x
EqualSubstringString 64 64 +0.0% 1.00x
EqualSubstringSubstring 65 65 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 51 51 +0.0% 1.00x
ErrorHandling 4572 4572 +0.0% 1.00x
ExclusivityGlobal 169 164 -3.0% 1.03x
ExclusivityIndependent 66 69 +4.5% 0.96x (?)
FatCompactMap 258383 258658 +0.1% 1.00x (?)
FilterEvenUsingReduce 3205 3203 -0.1% 1.00x (?)
FilterEvenUsingReduceInto 1639 1638 -0.1% 1.00x (?)
FloatingPointPrinting_Double_description_small 21547 21547 +0.0% 1.00x
FloatingPointPrinting_Double_description_uniform 32043 32094 +0.2% 1.00x (?)
FloatingPointPrinting_Float80_description_small 27938 27905 -0.1% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 54098 54136 +0.1% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 114405 117264 +2.5% 0.98x (?)
FloatingPointPrinting_Float_description_small 5939 5914 -0.4% 1.00x
FloatingPointPrinting_Float_description_uniform 15574 15523 -0.3% 1.00x
FloatingPointPrinting_Float_interpolated 65603 66495 +1.4% 0.99x (?)
FrequenciesUsingReduce 9418 9486 +0.7% 0.99x (?)
FrequenciesUsingReduceInto 2771 2772 +0.0% 1.00x (?)
Hanoi 17364 17377 +0.1% 1.00x (?)
HashTest 18812 18742 -0.4% 1.00x (?)
Histogram 5532 5538 +0.1% 1.00x (?)
Integrate 526 527 +0.2% 1.00x
IterateData 4501 4492 -0.2% 1.00x (?)
Join 165 166 +0.6% 0.99x
LazilyFilteredArrayContains 655337 655978 +0.1% 1.00x (?)
LazilyFilteredArrays 1269647 1261836 -0.6% 1.01x (?)
LazilyFilteredRange 479495 480985 +0.3% 1.00x (?)
LessSubstringSubstring 65 65 +0.0% 1.00x
LessSubstringSubstringGenericComparable 50 50 +0.0% 1.00x
LinkedList 29324 29258 -0.2% 1.00x (?)
LuhnAlgoEager 4975 4977 +0.0% 1.00x (?)
LuhnAlgoLazy 5227 5099 -2.4% 1.03x (?)
MapReduce 22386 22391 +0.0% 1.00x (?)
MapReduceAnyCollection 22395 22340 -0.2% 1.00x (?)
MapReduceAnyCollectionShort 31990 32472 +1.5% 0.99x (?)
MapReduceClass 26028 25992 -0.1% 1.00x (?)
MapReduceClassShort 35435 35704 +0.8% 0.99x (?)
MapReduceLazyCollection 20094 19967 -0.6% 1.01x (?)
MapReduceLazyCollectionShort 29126 29834 +2.4% 0.98x (?)
MapReduceLazySequence 18278 18220 -0.3% 1.00x (?)
MapReduceSequence 27325 27275 -0.2% 1.00x
MapReduceShort 32638 32568 -0.2% 1.00x (?)
MapReduceShortString 184 187 +1.6% 0.98x (?)
MapReduceString 1511 1508 -0.2% 1.00x (?)
Memset 40013 40129 +0.3% 1.00x
MonteCarloE 1026443 1028882 +0.2% 1.00x (?)
MonteCarloPi 4615129 4705152 +2.0% 0.98x
NSDictionaryCastToSwift 7372 7396 +0.3% 1.00x (?)
NSError 544 549 +0.9% 0.99x (?)
NSStringConversion 684 668 -2.3% 1.02x
NibbleSort 460407 459296 -0.2% 1.00x (?)
NopDeinit 173609 172530 -0.6% 1.01x (?)
ObjectAllocation 1122 1114 -0.7% 1.01x (?)
ObjectiveCBridgeFromNSArrayAnyObject 26221 26395 +0.7% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 7816 7686 -1.7% 1.02x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 42894 43436 +1.3% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 40499 42166 +4.1% 0.96x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 108844 107548 -1.2% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObject 48788 47786 -2.1% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 65637 65276 -0.5% 1.01x (?)
ObjectiveCBridgeFromNSString 2625 2647 +0.8% 0.99x (?)
ObjectiveCBridgeFromNSStringForced 2546 2538 -0.3% 1.00x (?)
ObjectiveCBridgeStubDataAppend 5950 5932 -0.3% 1.00x (?)
ObjectiveCBridgeStubDateMutation 697 693 -0.6% 1.01x (?)
ObjectiveCBridgeStubFromArrayOfNSString 30491 31132 +2.1% 0.98x (?)
ObjectiveCBridgeStubFromNSDate 6185 6192 +0.1% 1.00x (?)
ObjectiveCBridgeStubFromNSString 975 975 +0.0% 1.00x
ObjectiveCBridgeStubFromNSStringRef 181 179 -1.1% 1.01x
ObjectiveCBridgeStubNSDataAppend 2832 2798 -1.2% 1.01x (?)
ObjectiveCBridgeStubNSDateMutationRef 13865 14070 +1.5% 0.99x (?)
ObjectiveCBridgeStubToArrayOfNSString 37118 36726 -1.1% 1.01x (?)
ObjectiveCBridgeStubToNSDate 13744 14114 +2.7% 0.97x (?)
ObjectiveCBridgeStubToNSDateRef 3132 3138 +0.2% 1.00x (?)
ObjectiveCBridgeStubToNSString 2177 2181 +0.2% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 138 140 +1.4% 0.99x (?)
ObjectiveCBridgeStubURLAppendPath 261688 258378 -1.3% 1.01x (?)
ObjectiveCBridgeStubURLAppendPathRef 260143 270451 +4.0% 0.96x (?)
ObjectiveCBridgeToNSArray 14533 14132 -2.8% 1.03x (?)
ObjectiveCBridgeToNSDictionary 25436 24504 -3.7% 1.04x (?)
ObjectiveCBridgeToNSSet 15890 16591 +4.4% 0.96x (?)
ObjectiveCBridgeToNSString 485 489 +0.8% 0.99x (?)
ObserverClosure 5804 5796 -0.1% 1.00x (?)
ObserverForwarderStruct 3933 3920 -0.3% 1.00x (?)
ObserverPartiallyAppliedMethod 7179 7196 +0.2% 1.00x (?)
ObserverUnappliedMethod 7228 7268 +0.6% 0.99x (?)
OpaqueConsumingUsers 12030 12033 +0.0% 1.00x (?)
OpenClose 473 488 +3.2% 0.97x
PartialApplyDynamicType 35419 35288 -0.4% 1.00x (?)
Phonebook 13823 13841 +0.1% 1.00x
PolymorphicCalls 2188 2188 +0.0% 1.00x
PopFrontArray 4125 4121 -0.1% 1.00x (?)
PopFrontArrayGeneric 4583 4623 +0.9% 0.99x (?)
PrefixAnyCollection 13923 13933 +0.1% 1.00x (?)
PrefixAnyCollectionLazy 101823 99341 -2.4% 1.02x (?)
PrefixAnySeqCRangeIter 16891 16907 +0.1% 1.00x (?)
PrefixAnySeqCRangeIterLazy 16961 17004 +0.3% 1.00x (?)
PrefixAnySeqCntRange 14179 13910 -1.9% 1.02x (?)
PrefixAnySeqCntRangeLazy 13926 13896 -0.2% 1.00x (?)
PrefixAnySequence 9427 9383 -0.5% 1.00x (?)
PrefixAnySequenceLazy 9522 9507 -0.2% 1.00x (?)
PrefixArray 3025 3019 -0.2% 1.00x (?)
PrefixArrayLazy 26269 26247 -0.1% 1.00x (?)
PrefixCountableRange 310 311 +0.3% 1.00x (?)
PrefixCountableRangeLazy 31129 31129 +0.0% 1.00x
PrefixSequence 9096 9109 +0.1% 1.00x (?)
PrefixSequenceLazy 9108 9235 +1.4% 0.99x (?)
PrefixWhileAnyCollection 26131 26155 +0.1% 1.00x (?)
PrefixWhileAnyCollectionLazy 19819 19622 -1.0% 1.01x (?)
PrefixWhileAnySeqCRangeIter 33015 32986 -0.1% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 19770 19727 -0.2% 1.00x (?)
PrefixWhileAnySeqCntRange 26208 26168 -0.2% 1.00x (?)
PrefixWhileAnySeqCntRangeLazy 19712 19701 -0.1% 1.00x (?)
PrefixWhileAnySequence 23215 23356 +0.6% 0.99x (?)
PrefixWhileAnySequenceLazy 9864 9866 +0.0% 1.00x (?)
PrefixWhileArray 9089 9111 +0.2% 1.00x (?)
PrefixWhileArrayLazy 10792 10798 +0.1% 1.00x (?)
PrefixWhileCountableRange 12490 12511 +0.2% 1.00x (?)
PrefixWhileCountableRangeLazy 16409 16421 +0.1% 1.00x (?)
PrefixWhileSequence 22757 22868 +0.5% 1.00x (?)
PrefixWhileSequenceLazy 9856 9860 +0.0% 1.00x (?)
Prims 8495 8509 +0.2% 1.00x (?)
PrimsSplit 8525 8468 -0.7% 1.01x (?)
QueueConcrete 12248 12248 +0.0% 1.00x
QueueGeneric 16270 16267 -0.0% 1.00x (?)
RC4 14403 14431 +0.2% 1.00x (?)
RGBHistogram 20710 20790 +0.4% 1.00x (?)
Radix2CooleyTukey 37745 37377 -1.0% 1.01x (?)
Radix2CooleyTukeyf 31768 31773 +0.0% 1.00x (?)
RandomDoubleLCG 55039 55061 +0.0% 1.00x (?)
RandomIntegersDef 40037 40051 +0.0% 1.00x (?)
RandomIntegersLCG 19472 19490 +0.1% 1.00x (?)
RandomShuffleDef 1956546 1954069 -0.1% 1.00x (?)
RandomShuffleLCG 1350973 1351864 +0.1% 1.00x (?)
RangeAssignment 2443 2412 -1.3% 1.01x (?)
RangeIterationSigned 13163 13214 +0.4% 1.00x (?)
RangeReplaceableCollectionPlusDefault 9666 9690 +0.2% 1.00x (?)
RecursiveOwnedParameter 5438 5402 -0.7% 1.01x (?)
RemoveWhereFilterInts 1850 1852 +0.1% 1.00x (?)
RemoveWhereFilterString 1173 1172 -0.1% 1.00x (?)
RemoveWhereFilterStrings 2319 2321 +0.1% 1.00x (?)
RemoveWhereMoveInts 2985 2988 +0.1% 1.00x (?)
RemoveWhereMoveStrings 3477 3480 +0.1% 1.00x (?)
RemoveWhereQuadraticInts 7636 7648 +0.2% 1.00x
RemoveWhereQuadraticString 2295 2321 +1.1% 0.99x
RemoveWhereQuadraticStrings 9097 9106 +0.1% 1.00x (?)
RemoveWhereSwapInts 5380 5378 -0.0% 1.00x (?)
RemoveWhereSwapStrings 6031 6035 +0.1% 1.00x (?)
ReversedArray 11490 11519 +0.3% 1.00x
ReversedBidirectional 40597 40522 -0.2% 1.00x (?)
ReversedDictionary 20108 20074 -0.2% 1.00x (?)
RomanNumbers 1189081 1194059 +0.4% 1.00x (?)
SequenceAlgosAnySequence 11887 11877 -0.1% 1.00x (?)
SequenceAlgosArray 653252 653303 +0.0% 1.00x (?)
SequenceAlgosContiguousArray 257393 257401 +0.0% 1.00x (?)
SequenceAlgosList 7868 7834 -0.4% 1.00x (?)
SequenceAlgosRange 1175239 1163033 -1.0% 1.01x (?)
SequenceAlgosUnfoldSequence 5930 5979 +0.8% 0.99x (?)
SetExclusiveOr 14723 14707 -0.1% 1.00x (?)
SetExclusiveOr_OfObjects 37523 37449 -0.2% 1.00x (?)
SetIntersect 6157 6159 +0.0% 1.00x (?)
SetIntersect_OfObjects 9445 9437 -0.1% 1.00x (?)
SetIsSubsetOf 1073 1071 -0.2% 1.00x
SetIsSubsetOf_OfObjects 2031 2040 +0.4% 1.00x (?)
SetUnion 10594 10603 +0.1% 1.00x (?)
SetUnion_OfObjects 26929 26974 +0.2% 1.00x (?)
SevenBoom 923 915 -0.9% 1.01x (?)
Sim2DArray 39321 39257 -0.2% 1.00x (?)
SortLargeExistentials 8720 8742 +0.3% 1.00x (?)
SortLettersInPlace 1405 1403 -0.1% 1.00x (?)
SortSortedStrings 790 770 -2.5% 1.03x
SortStrings 1633 1603 -1.8% 1.02x
SortStringsUnicode 2493 2477 -0.6% 1.01x
StackPromo 84812 82636 -2.6% 1.03x (?)
StaticArray 2363 2299 -2.7% 1.03x
StrComplexWalk 6521 6723 +3.1% 0.97x
StrToInt 70810 70605 -0.3% 1.00x (?)
StringAdder 626 633 +1.1% 0.99x
StringBuilder 4440 4580 +3.2% 0.97x (?)
StringBuilderSmallReservingCapacity 4453 4487 +0.8% 0.99x (?)
StringComparison_abnormal 1161 1138 -2.0% 1.02x (?)
StringComparison_ascii 7920 7909 -0.1% 1.00x (?)
StringComparison_emoji 1753 1754 +0.1% 1.00x (?)
StringComparison_fastPrenormal 4358 4358 +0.0% 1.00x
StringComparison_latin1 3384 3391 +0.2% 1.00x (?)
StringComparison_longSharedPrefix 2085 2085 +0.0% 1.00x
StringComparison_nonBMPSlowestPrenormal 3265 3268 +0.1% 1.00x (?)
StringComparison_slowerPrenormal 3674 3681 +0.2% 1.00x (?)
StringComparison_zalgo 110311 110694 +0.3% 1.00x (?)
StringEdits 319770 322512 +0.9% 0.99x (?)
StringEnumRawValueInitialization 19169 19210 +0.2% 1.00x (?)
StringEqualPointerComparison 1541 1618 +5.0% 0.95x
StringFromLongWholeSubstring 22 23 +4.5% 0.96x
StringFromLongWholeSubstringGeneric 176 176 +0.0% 1.00x
StringHasPrefixUnicode 90048 90696 +0.7% 0.99x (?)
StringHasSuffixAscii 2878 3004 +4.4% 0.96x
StringHasSuffixUnicode 90509 90575 +0.1% 1.00x (?)
StringInterpolation 11161 11116 -0.4% 1.00x (?)
StringInterpolationManySmallSegments 17146 16579 -3.3% 1.03x (?)
StringInterpolationSmall 5228 5271 +0.8% 0.99x (?)
StringMatch 34615 34499 -0.3% 1.00x (?)
StringRemoveDupes 644 643 -0.2% 1.00x (?)
StringUTF16Builder 6954 6933 -0.3% 1.00x (?)
StringUTF16SubstringBuilder 19666 19634 -0.2% 1.00x (?)
StringWalk 11259 11426 +1.5% 0.99x
StringWithCString 38877 38861 -0.0% 1.00x (?)
StringWordBuilder 2130 2119 -0.5% 1.01x (?)
StringWordBuilderReservingCapacity 1766 1762 -0.2% 1.00x (?)
SubstringComparable 1405 1405 +0.0% 1.00x
SubstringEqualString 1516 1515 -0.1% 1.00x (?)
SubstringEquatable 4763 4790 +0.6% 0.99x (?)
SubstringFromLongString 14 14 +0.0% 1.00x
SubstringFromLongStringGeneric 95 95 +0.0% 1.00x
SuffixAnyCollection 4653 4662 +0.2% 1.00x (?)
SuffixAnyCollectionLazy 33390 32515 -2.6% 1.03x (?)
SuffixAnySeqCRangeIter 36009 35890 -0.3% 1.00x (?)
SuffixAnySeqCRangeIterLazy 35713 35447 -0.7% 1.01x (?)
SuffixAnySeqCntRangeLazy 4675 4659 -0.3% 1.00x (?)
SuffixAnySequence 23109 23148 +0.2% 1.00x (?)
SuffixAnySequenceLazy 22771 22777 +0.0% 1.00x (?)
SuffixCountableRange 107 108 +0.9% 0.99x
SuffixCountableRangeLazy 10388 10396 +0.1% 1.00x (?)
SuffixSequence 22754 22649 -0.5% 1.00x (?)
SuffixSequenceLazy 22553 22485 -0.3% 1.00x (?)
SumUsingReduce 138972 138863 -0.1% 1.00x (?)
SumUsingReduceInto 133229 133091 -0.1% 1.00x
SuperChars 73540 73630 +0.1% 1.00x (?)
TwoSum 3104 3111 +0.2% 1.00x (?)
TypeFlood 183 180 -1.6% 1.02x (?)
UTF8Decode 25885 25867 -0.1% 1.00x (?)
Walsh 10888 10882 -0.1% 1.00x (?)
WordCountHistogramASCII 33110 33023 -0.3% 1.00x (?)
WordCountHistogramUTF16 41428 41018 -1.0% 1.01x (?)
WordCountUniqueASCII 6215 6213 -0.0% 1.00x (?)
WordCountUniqueUTF16 11561 11505 -0.5% 1.00x (?)
WordSplitASCII 8822 8760 -0.7% 1.01x (?)
WordSplitUTF16 10678 10793 +1.1% 0.99x (?)
XorLoop 20880 20859 -0.1% 1.00x (?)
Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 8-Core Intel Xeon E5
  Processor Speed: 3 GHz
  Number of Processors: 1
  Total Number of Cores: 8
  L2 Cache (per Core): 256 KB
  L3 Cache: 25 MB
  Memory: 64 GB

@phausler
Copy link
Contributor Author

phausler commented Jun 8, 2018

@swift-ci please benchmark

@phausler
Copy link
Contributor Author

phausler commented Jun 8, 2018

@swift-ci please smoke test

@phausler
Copy link
Contributor Author

phausler commented Jun 8, 2018

@swift-ci please benchmark

@swift-ci
Copy link
Contributor

swift-ci commented Jun 9, 2018

Build comment file:

Optimized (O)

Regression (19)
TEST OLD NEW DELTA SPEEDUP
Sim2DArray 373 537 +44.0% 0.69x
RangeIterationSigned 154 179 +16.2% 0.86x
ObjectiveCBridgeFromNSArrayAnyObjectForced 4253 4555 +7.1% 0.93x (?)
CharIteration_chinese_unicodeScalars 13847 14747 +6.5% 0.94x
CharIteration_russian_unicodeScalars 15233 16208 +6.4% 0.94x
CharIteration_korean_unicodeScalars 17751 18886 +6.4% 0.94x
CharIteration_ascii_unicodeScalars 18311 19478 +6.4% 0.94x
CharIteration_japanese_unicodeScalars 21940 23317 +6.3% 0.94x
ObjectiveCBridgeStubFromArrayOfNSString 28403 30075 +5.9% 0.94x (?)
RemoveWhereFilterString 223 236 +5.8% 0.94x
StringWalk 1230 1300 +5.7% 0.95x
CharIteration_tweet_unicodeScalars 36438 38493 +5.6% 0.95x
CharIteration_punctuated_unicodeScalars 4117 4345 +5.5% 0.95x
DropLastSequenceLazy 563 594 +5.5% 0.95x
DropLastSequence 563 594 +5.5% 0.95x (?)
CharIndexing_russian_unicodeScalars 12171 12819 +5.3% 0.95x
CharIndexing_ascii_unicodeScalars 14608 15385 +5.3% 0.95x
CharIndexing_japanese_unicodeScalars 17488 18412 +5.3% 0.95x
CharIndexing_korean_unicodeScalars 14167 14914 +5.3% 0.95x
Improvement (6)
TEST OLD NEW DELTA SPEEDUP
DataAppendSequence 5256427 18942 -99.6% 277.50x
MapReduceLazyCollectionShort 34 30 -11.8% 1.13x
PointerArithmetics 30816 28248 -8.3% 1.09x
RC4 143 133 -7.0% 1.08x
MapReduceAnyCollection 385 359 -6.8% 1.07x (?)
MapReduce 357 333 -6.7% 1.07x
No Changes (415)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3160 3152 -0.3% 1.00x (?)
AnyHashableWithAClass 77418 77588 +0.2% 1.00x (?)
Array2D 2545 2544 -0.0% 1.00x (?)
ArrayAppend 949 950 +0.1% 1.00x (?)
ArrayAppendArrayOfInt 673 673 +0.0% 1.00x
ArrayAppendAscii 3451 3452 +0.0% 1.00x (?)
ArrayAppendAsciiSubstring 21831 21832 +0.0% 1.00x (?)
ArrayAppendFromGeneric 673 673 +0.0% 1.00x
ArrayAppendGenericStructs 1210 1209 -0.1% 1.00x (?)
ArrayAppendLatin1 37582 36968 -1.6% 1.02x
ArrayAppendLatin1Substring 127734 128398 +0.5% 0.99x (?)
ArrayAppendLazyMap 1177 1175 -0.2% 1.00x (?)
ArrayAppendOptionals 1211 1210 -0.1% 1.00x (?)
ArrayAppendRepeatCol 1175 1175 +0.0% 1.00x
ArrayAppendReserved 720 719 -0.1% 1.00x (?)
ArrayAppendSequence 979 979 +0.0% 1.00x
ArrayAppendStrings 5657 5656 -0.0% 1.00x (?)
ArrayAppendToFromGeneric 675 674 -0.1% 1.00x (?)
ArrayAppendToGeneric 674 674 +0.0% 1.00x
ArrayAppendUTF16 37290 37296 +0.0% 1.00x (?)
ArrayAppendUTF16Substring 125441 126532 +0.9% 0.99x
ArrayInClass 77 77 +0.0% 1.00x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 129 129 +0.0% 1.00x
ArrayOfGenericRef 3903 3902 -0.0% 1.00x (?)
ArrayOfPOD 156 156 +0.0% 1.00x
ArrayOfRef 3883 3886 +0.1% 1.00x (?)
ArrayPlusEqualArrayOfInt 674 673 -0.1% 1.00x (?)
ArrayPlusEqualFiveElementCollection 4773 4766 -0.1% 1.00x (?)
ArrayPlusEqualSingleElementCollection 949 950 +0.1% 1.00x (?)
ArrayPlusEqualThreeElements 1480 1488 +0.5% 0.99x (?)
ArraySubscript 1363 1358 -0.4% 1.00x (?)
ArrayValueProp 7 7 +0.0% 1.00x
ArrayValueProp2 7 7 +0.0% 1.00x
ArrayValueProp3 7 7 +0.0% 1.00x
ArrayValueProp4 7 7 +0.0% 1.00x
BinaryFloatingPointPropertiesBinade 23 23 +0.0% 1.00x
BinaryFloatingPointPropertiesNextUp 25 25 +0.0% 1.00x
BinaryFloatingPointPropertiesUlp 31 31 +0.0% 1.00x
BitCount 181 181 +0.0% 1.00x
ByteSwap 94 92 -2.1% 1.02x (?)
COWArrayGuaranteedParameterOverhead 7677 7688 +0.1% 1.00x (?)
COWTree 4716 4746 +0.6% 0.99x (?)
CSVParsing 588856 588100 -0.1% 1.00x (?)
CSVParsingAlt 728743 731275 +0.3% 1.00x (?)
CSVParsingAltIndices 305084 306321 +0.4% 1.00x (?)
CStringLongAscii 3616 3618 +0.1% 1.00x (?)
CStringLongNonAscii 2107 2111 +0.2% 1.00x (?)
CStringShortAscii 2977 2985 +0.3% 1.00x (?)
Calculator 173 173 +0.0% 1.00x
CaptureProp 3680 3685 +0.1% 1.00x (?)
ChainedFilterMap 1262 1262 +0.0% 1.00x
CharIndexing_ascii_unicodeScalars_Backwards 14382 14521 +1.0% 0.99x
CharIndexing_chinese_unicodeScalars 11068 11648 +5.2% 0.95x
CharIndexing_chinese_unicodeScalars_Backwards 10891 10991 +0.9% 0.99x
CharIndexing_japanese_unicodeScalars_Backwards 17215 17375 +0.9% 0.99x (?)
CharIndexing_korean_unicodeScalars_Backwards 13929 14082 +1.1% 0.99x
CharIndexing_punctuatedJapanese_unicodeScalars 2657 2774 +4.4% 0.96x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2613 2630 +0.7% 0.99x
CharIndexing_punctuated_unicodeScalars 3318 3475 +4.7% 0.95x
CharIndexing_punctuated_unicodeScalars_Backwards 3267 3277 +0.3% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 11987 12102 +1.0% 0.99x
CharIndexing_tweet_unicodeScalars 28785 29730 +3.3% 0.97x
CharIndexing_tweet_unicodeScalars_Backwards 28377 28604 +0.8% 0.99x
CharIndexing_utf16_unicodeScalars 20790 20725 -0.3% 1.00x (?)
CharIndexing_utf16_unicodeScalars_Backwards 21181 21205 +0.1% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 13548 13772 +1.7% 0.98x
CharIteration_chinese_unicodeScalars_Backwards 10261 10430 +1.6% 0.98x
CharIteration_japanese_unicodeScalars_Backwards 16220 16477 +1.6% 0.98x
CharIteration_korean_unicodeScalars_Backwards 13137 13352 +1.6% 0.98x
CharIteration_punctuatedJapanese_unicodeScalars 3292 3458 +5.0% 0.95x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2455 2498 +1.8% 0.98x
CharIteration_punctuated_unicodeScalars_Backwards 3071 3121 +1.6% 0.98x
CharIteration_russian_unicodeScalars_Backwards 11289 11471 +1.6% 0.98x
CharIteration_tweet_unicodeScalars_Backwards 26767 27264 +1.9% 0.98x
CharIteration_utf16_unicodeScalars 24864 25095 +0.9% 0.99x
CharIteration_utf16_unicodeScalars_Backwards 16780 16583 -1.2% 1.01x
CharacterLiteralsLarge 5313 5324 +0.2% 1.00x (?)
CharacterLiteralsSmall 195 195 +0.0% 1.00x
CharacterPropertiesFetch 4109 4126 +0.4% 1.00x (?)
CharacterPropertiesPrecomputed 934 936 +0.2% 1.00x (?)
CharacterPropertiesStashed 1380 1366 -1.0% 1.01x (?)
CharacterPropertiesStashedMemo 1439 1432 -0.5% 1.00x (?)
Chars 981 983 +0.2% 1.00x
ClassArrayGetter 13 13 +0.0% 1.00x
Combos 439 438 -0.2% 1.00x (?)
DataAccessBytes 1022 1023 +0.1% 1.00x (?)
DataAppendArray 4748 4851 +2.2% 0.98x (?)
DataAppendBytes 4404 4531 +2.9% 0.97x (?)
DataAppendDataLargeToLarge 60494 60552 +0.1% 1.00x (?)
DataAppendDataLargeToMedium 31834 31939 +0.3% 1.00x (?)
DataAppendDataLargeToSmall 30922 30919 -0.0% 1.00x (?)
DataAppendDataMediumToLarge 33674 33908 +0.7% 0.99x (?)
DataAppendDataMediumToMedium 5962 6092 +2.2% 0.98x (?)
DataAppendDataMediumToSmall 5423 5305 -2.2% 1.02x (?)
DataAppendDataSmallToLarge 33367 33809 +1.3% 0.99x (?)
DataAppendDataSmallToMedium 5626 5658 +0.6% 0.99x (?)
DataAppendDataSmallToSmall 5239 5097 -2.7% 1.03x (?)
DataCopyBytes 388 388 +0.0% 1.00x
DataCount 30 30 +0.0% 1.00x
DataMutateBytes 3508 3528 +0.6% 0.99x (?)
DataReplaceLarge 32952 33343 +1.2% 0.99x (?)
DataReplaceLargeBuffer 50771 51292 +1.0% 0.99x (?)
DataReplaceMedium 6770 7109 +5.0% 0.95x (?)
DataReplaceMediumBuffer 10004 10466 +4.6% 0.96x (?)
DataReplaceSmall 4953 5097 +2.9% 0.97x (?)
DataReplaceSmallBuffer 7617 7844 +3.0% 0.97x (?)
DataReset 2521 2532 +0.4% 1.00x (?)
DataSetCount 487 493 +1.2% 0.99x (?)
DataSubscript 197 197 +0.0% 1.00x
DictOfArraysToArrayOfDicts 717 713 -0.6% 1.01x (?)
Dictionary 456 465 +2.0% 0.98x
Dictionary2 567 570 +0.5% 0.99x (?)
Dictionary2OfObjects 1866 1868 +0.1% 1.00x (?)
Dictionary3 199 199 +0.0% 1.00x
Dictionary3OfObjects 662 661 -0.2% 1.00x (?)
Dictionary4 300 305 +1.7% 0.98x
Dictionary4Legacy 668 661 -1.0% 1.01x (?)
Dictionary4OfObjects 405 411 +1.5% 0.99x
Dictionary4OfObjectsLegacy 867 867 +0.0% 1.00x
DictionaryBridge 1074 1048 -2.4% 1.02x (?)
DictionaryCopy 94062 94985 +1.0% 0.99x
DictionaryFilter 92895 93455 +0.6% 0.99x (?)
DictionaryGroup 221 220 -0.5% 1.00x (?)
DictionaryGroupOfObjects 1892 1892 +0.0% 1.00x
DictionaryKeysContainsCocoa 35 35 +0.0% 1.00x
DictionaryKeysContainsNative 29 28 -3.4% 1.04x (?)
DictionaryLiteral 1705 1711 +0.4% 1.00x (?)
DictionaryOfObjects 2127 2121 -0.3% 1.00x (?)
DictionaryRemove 3980 3956 -0.6% 1.01x (?)
DictionaryRemoveOfObjects 23179 23196 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutation 236 239 +1.3% 0.99x (?)
DictionarySubscriptDefaultMutationArray 538 542 +0.7% 0.99x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 3589 3582 -0.2% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 1521 1520 -0.1% 1.00x (?)
DictionarySwap 969 960 -0.9% 1.01x
DictionarySwapAt 6234 5991 -3.9% 1.04x (?)
DictionarySwapAtOfObjects 46611 46993 +0.8% 0.99x (?)
DictionarySwapOfObjects 7950 7924 -0.3% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 75 75 +0.0% 1.00x
DropFirstAnyCollectionLazy 58410 57865 -0.9% 1.01x (?)
DropFirstAnySeqCRangeIter 19271 19275 +0.0% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 19256 19265 +0.0% 1.00x (?)
DropFirstAnySeqCntRange 36 37 +2.8% 0.97x
DropFirstAnySeqCntRangeLazy 37 37 +0.0% 1.00x
DropFirstAnySequence 4488 4482 -0.1% 1.00x (?)
DropFirstAnySequenceLazy 4490 4484 -0.1% 1.00x (?)
DropFirstArray 31 31 +0.0% 1.00x
DropFirstArrayLazy 31 31 +0.0% 1.00x
DropFirstCountableRange 31 31 +0.0% 1.00x
DropFirstCountableRangeLazy 31 31 +0.0% 1.00x
DropFirstSequence 2404 2404 +0.0% 1.00x
DropFirstSequenceLazy 2489 2488 -0.0% 1.00x (?)
DropLastAnyCollection 27 27 +0.0% 1.00x
DropLastAnyCollectionLazy 19373 19385 +0.1% 1.00x (?)
DropLastAnySeqCRangeIter 3153 3161 +0.3% 1.00x (?)
DropLastAnySeqCRangeIterLazy 3151 3158 +0.2% 1.00x (?)
DropLastAnySeqCntRange 12 12 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 12 12 +0.0% 1.00x
DropLastAnySequence 4399 4411 +0.3% 1.00x (?)
DropLastAnySequenceLazy 4483 4500 +0.4% 1.00x (?)
DropLastCountableRange 10 10 +0.0% 1.00x
DropLastCountableRangeLazy 10 10 +0.0% 1.00x
DropWhileAnyCollection 96 96 +0.0% 1.00x
DropWhileAnyCollectionLazy 112 112 +0.0% 1.00x
DropWhileAnySeqCRangeIter 15157 15158 +0.0% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 112 112 +0.0% 1.00x
DropWhileAnySeqCntRange 45 45 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 112 112 +0.0% 1.00x
DropWhileAnySequence 4342 4335 -0.2% 1.00x (?)
DropWhileAnySequenceLazy 1664 1664 +0.0% 1.00x
DropWhileArrayLazy 79 79 +0.0% 1.00x
DropWhileCountableRange 32 32 +0.0% 1.00x
DropWhileCountableRangeLazy 94 94 +0.0% 1.00x
DropWhileSequence 1987 1981 -0.3% 1.00x (?)
DropWhileSequenceLazy 79 79 +0.0% 1.00x
EqualStringSubstring 43 43 +0.0% 1.00x
EqualSubstringString 43 43 +0.0% 1.00x
EqualSubstringSubstring 43 43 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 43 43 +0.0% 1.00x
ErrorHandling 1083 1080 -0.3% 1.00x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FatCompactMap 178831 179084 +0.1% 1.00x (?)
FilterEvenUsingReduce 1155 1156 +0.1% 1.00x (?)
FilterEvenUsingReduceInto 132 131 -0.8% 1.01x (?)
FloatingPointPrinting_Double_description_small 19312 19379 +0.3% 1.00x (?)
FloatingPointPrinting_Double_description_uniform 18990 18946 -0.2% 1.00x (?)
FloatingPointPrinting_Double_interpolated 55024 55582 +1.0% 0.99x (?)
FloatingPointPrinting_Float80_description_small 25524 25464 -0.2% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 24789 24796 +0.0% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 58566 58396 -0.3% 1.00x (?)
FloatingPointPrinting_Float_description_small 4831 4933 +2.1% 0.98x (?)
FloatingPointPrinting_Float_description_uniform 4852 4738 -2.3% 1.02x
FloatingPointPrinting_Float_interpolated 34511 34550 +0.1% 1.00x (?)
FrequenciesUsingReduce 4362 4387 +0.6% 0.99x (?)
FrequenciesUsingReduceInto 1354 1353 -0.1% 1.00x (?)
Hanoi 1913 1980 +3.5% 0.97x
HashTest 842 847 +0.6% 0.99x (?)
Histogram 653 662 +1.4% 0.99x
Integrate 306 300 -2.0% 1.02x (?)
IterateData 1383 1337 -3.3% 1.03x
Join 150 152 +1.3% 0.99x (?)
LazilyFilteredArrayContains 33597 33961 +1.1% 0.99x
LazilyFilteredArrays 58975 59151 +0.3% 1.00x (?)
LazilyFilteredRange 3465 3470 +0.1% 1.00x (?)
LessSubstringSubstring 43 43 +0.0% 1.00x
LessSubstringSubstringGenericComparable 43 43 +0.0% 1.00x
LinkedList 6776 6759 -0.3% 1.00x (?)
LuhnAlgoEager 396 398 +0.5% 0.99x (?)
LuhnAlgoLazy 396 398 +0.5% 0.99x (?)
MapReduceAnyCollectionShort 2024 2035 +0.5% 0.99x (?)
MapReduceClass 2693 2690 -0.1% 1.00x (?)
MapReduceClassShort 4078 4078 +0.0% 1.00x
MapReduceLazyCollection 12 12 +0.0% 1.00x
MapReduceLazySequence 77 77 +0.0% 1.00x
MapReduceSequence 406 400 -1.5% 1.01x (?)
MapReduceShort 1795 1810 +0.8% 0.99x (?)
MapReduceShortString 18 18 +0.0% 1.00x
MapReduceString 42 42 +0.0% 1.00x
Memset 192 192 +0.0% 1.00x
MonteCarloE 9160 9209 +0.5% 0.99x (?)
MonteCarloPi 38290 38242 -0.1% 1.00x (?)
NSDictionaryCastToSwift 6176 6099 -1.2% 1.01x (?)
NSError 146 146 +0.0% 1.00x
NSStringConversion 615 600 -2.4% 1.02x (?)
NibbleSort 3315 3289 -0.8% 1.01x
NopDeinit 28333 28999 +2.4% 0.98x
ObjectAllocation 118 118 +0.0% 1.00x
ObjectiveCBridgeFromNSArrayAnyObject 22546 22253 -1.3% 1.01x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 40090 40150 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 39281 39096 -0.5% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 100461 98287 -2.2% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObject 43359 45276 +4.4% 0.96x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4433 4437 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 60765 61613 +1.4% 0.99x (?)
ObjectiveCBridgeFromNSString 1100 1105 +0.5% 1.00x (?)
ObjectiveCBridgeFromNSStringForced 2403 2407 +0.2% 1.00x (?)
ObjectiveCBridgeStubDataAppend 5682 5652 -0.5% 1.01x (?)
ObjectiveCBridgeStubDateMutation 359 359 +0.0% 1.00x
ObjectiveCBridgeStubFromNSDate 5556 5455 -1.8% 1.02x (?)
ObjectiveCBridgeStubFromNSString 912 915 +0.3% 1.00x (?)
ObjectiveCBridgeStubFromNSStringRef 139 142 +2.2% 0.98x (?)
ObjectiveCBridgeStubNSDataAppend 2311 2288 -1.0% 1.01x (?)
ObjectiveCBridgeStubNSDateMutationRef 11753 12013 +2.2% 0.98x (?)
ObjectiveCBridgeStubToArrayOfNSString 35361 35610 +0.7% 0.99x (?)
ObjectiveCBridgeStubToNSDate 12967 12955 -0.1% 1.00x (?)
ObjectiveCBridgeStubToNSDateRef 3105 3067 -1.2% 1.01x (?)
ObjectiveCBridgeStubToNSString 2100 2098 -0.1% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 103 101 -1.9% 1.02x (?)
ObjectiveCBridgeStubURLAppendPath 253063 244961 -3.2% 1.03x (?)
ObjectiveCBridgeStubURLAppendPathRef 245612 243288 -0.9% 1.01x (?)
ObjectiveCBridgeToNSArray 13041 13030 -0.1% 1.00x (?)
ObjectiveCBridgeToNSDictionary 24244 23782 -1.9% 1.02x (?)
ObjectiveCBridgeToNSSet 15311 15695 +2.5% 0.98x (?)
ObjectiveCBridgeToNSString 404 405 +0.2% 1.00x (?)
ObserverClosure 1900 1904 +0.2% 1.00x (?)
ObserverForwarderStruct 1037 1032 -0.5% 1.00x (?)
ObserverPartiallyAppliedMethod 3288 3298 +0.3% 1.00x (?)
ObserverUnappliedMethod 2146 2147 +0.0% 1.00x (?)
OpaqueConsumingUsers 3749 3748 -0.0% 1.00x (?)
OpenClose 59 59 +0.0% 1.00x
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 6203 6070 -2.1% 1.02x
PolymorphicCalls 22 22 +0.0% 1.00x
PopFrontArray 1697 1713 +0.9% 0.99x (?)
PopFrontArrayGeneric 1775 1708 -3.8% 1.04x (?)
PopFrontUnsafePointer 8211 8551 +4.1% 0.96x (?)
PrefixAnyCollection 75 75 +0.0% 1.00x
PrefixAnyCollectionLazy 58098 58212 +0.2% 1.00x (?)
PrefixAnySeqCRangeIter 14951 14932 -0.1% 1.00x (?)
PrefixAnySeqCRangeIterLazy 14945 14944 -0.0% 1.00x (?)
PrefixAnySeqCntRange 25 25 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 25 25 +0.0% 1.00x
PrefixAnySequence 3887 3878 -0.2% 1.00x
PrefixAnySequenceLazy 3887 3879 -0.2% 1.00x (?)
PrefixArray 31 31 +0.0% 1.00x
PrefixArrayLazy 31 31 +0.0% 1.00x
PrefixCountableRange 31 31 +0.0% 1.00x
PrefixCountableRangeLazy 31 31 +0.0% 1.00x
PrefixSequence 1993 1991 -0.1% 1.00x (?)
PrefixSequenceLazy 2041 2041 +0.0% 1.00x
PrefixWhileAnyCollection 138 138 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 81 81 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 7776 7759 -0.2% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 65 65 +0.0% 1.00x
PrefixWhileAnySeqCntRange 53 53 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 81 81 +0.0% 1.00x
PrefixWhileAnySequence 8795 8802 +0.1% 1.00x (?)
PrefixWhileAnySequenceLazy 1249 1249 +0.0% 1.00x
PrefixWhileArray 79 79 +0.0% 1.00x
PrefixWhileArrayLazy 63 63 +0.0% 1.00x
PrefixWhileCountableRange 32 32 +0.0% 1.00x
PrefixWhileCountableRangeLazy 31 31 +0.0% 1.00x
PrefixWhileSequence 323 324 +0.3% 1.00x (?)
PrefixWhileSequenceLazy 47 47 +0.0% 1.00x
Prims 802 806 +0.5% 1.00x (?)
PrimsSplit 805 809 +0.5% 1.00x (?)
QueueConcrete 1025 1024 -0.1% 1.00x (?)
QueueGeneric 1025 1026 +0.1% 1.00x (?)
RGBHistogram 2898 2899 +0.0% 1.00x (?)
RGBHistogramOfObjects 21232 21214 -0.1% 1.00x (?)
Radix2CooleyTukey 11066 11071 +0.0% 1.00x (?)
Radix2CooleyTukeyf 7858 7920 +0.8% 0.99x (?)
RandomDoubleDef 23841 23902 +0.3% 1.00x (?)
RandomDoubleLCG 2621 2615 -0.2% 1.00x (?)
RandomIntegersDef 21862 21983 +0.6% 0.99x (?)
RandomIntegersLCG 891 891 +0.0% 1.00x
RandomShuffleDef 728412 729001 +0.1% 1.00x (?)
RandomShuffleLCG 105555 105641 +0.1% 1.00x (?)
RangeAssignment 314 301 -4.1% 1.04x (?)
RangeReplaceableCollectionPlusDefault 906 904 -0.2% 1.00x (?)
RecursiveOwnedParameter 103 103 +0.0% 1.00x
RemoveWhereFilterInts 41 41 +0.0% 1.00x
RemoveWhereFilterStrings 390 390 +0.0% 1.00x
RemoveWhereMoveInts 13 13 +0.0% 1.00x
RemoveWhereMoveStrings 636 635 -0.2% 1.00x (?)
RemoveWhereQuadraticInts 1158 1159 +0.1% 1.00x (?)
RemoveWhereQuadraticString 333 335 +0.6% 0.99x (?)
RemoveWhereQuadraticStrings 2476 2475 -0.0% 1.00x (?)
RemoveWhereSwapInts 17 17 +0.0% 1.00x
RemoveWhereSwapStrings 770 770 +0.0% 1.00x
ReversedArray 51 51 +0.0% 1.00x
ReversedBidirectional 15279 15287 +0.1% 1.00x (?)
ReversedDictionary 204 203 -0.5% 1.00x (?)
RomanNumbers 74229 73111 -1.5% 1.02x
SequenceAlgosAnySequence 10737 10734 -0.0% 1.00x (?)
SequenceAlgosArray 1386 1387 +0.1% 1.00x (?)
SequenceAlgosContiguousArray 1386 1387 +0.1% 1.00x (?)
SequenceAlgosList 1213 1212 -0.1% 1.00x (?)
SequenceAlgosRange 2311 2311 +0.0% 1.00x
SequenceAlgosUnfoldSequence 989 988 -0.1% 1.00x (?)
SetExclusiveOr 4532 4523 -0.2% 1.00x (?)
SetExclusiveOr_OfObjects 10446 10374 -0.7% 1.01x (?)
SetIntersect 625 626 +0.2% 1.00x (?)
SetIntersect_OfObjects 1579 1576 -0.2% 1.00x (?)
SetIsSubsetOf 313 308 -1.6% 1.02x
SetIsSubsetOf_OfObjects 403 403 +0.0% 1.00x
SetUnion 3992 3897 -2.4% 1.02x (?)
SetUnion_OfObjects 9026 9030 +0.0% 1.00x (?)
SevenBoom 746 742 -0.5% 1.01x (?)
SortLargeExistentials 4950 5062 +2.3% 0.98x
SortLettersInPlace 893 890 -0.3% 1.00x (?)
SortSortedStrings 776 778 +0.3% 1.00x (?)
SortStrings 1613 1590 -1.4% 1.01x
SortStringsUnicode 2281 2272 -0.4% 1.00x (?)
StackPromo 21943 21964 +0.1% 1.00x (?)
StaticArray 8 8 +0.0% 1.00x
StrComplexWalk 1598 1593 -0.3% 1.00x
StrToInt 2879 2876 -0.1% 1.00x (?)
StringAdder 519 518 -0.2% 1.00x
StringBuilder 434 433 -0.2% 1.00x
StringBuilderLong 1112 1115 +0.3% 1.00x (?)
StringBuilderSmallReservingCapacity 452 452 +0.0% 1.00x
StringBuilderWithLongSubstring 1295 1295 +0.0% 1.00x
StringComparison_abnormal 694 699 +0.7% 0.99x (?)
StringComparison_ascii 950 912 -4.0% 1.04x
StringComparison_emoji 769 778 +1.2% 0.99x
StringComparison_fastPrenormal 755 755 +0.0% 1.00x
StringComparison_latin1 592 593 +0.2% 1.00x (?)
StringComparison_longSharedPrefix 855 858 +0.4% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 1526 1529 +0.2% 1.00x (?)
StringComparison_slowerPrenormal 1626 1629 +0.2% 1.00x (?)
StringComparison_zalgo 108382 108262 -0.1% 1.00x (?)
StringEdits 154315 156612 +1.5% 0.99x (?)
StringEnumRawValueInitialization 759 770 +1.4% 0.99x
StringEqualPointerComparison 256 256 +0.0% 1.00x
StringFromLongWholeSubstring 19 19 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 19 19 +0.0% 1.00x
StringHasPrefixAscii 2029 2003 -1.3% 1.01x
StringHasPrefixUnicode 88956 88917 -0.0% 1.00x (?)
StringHasSuffixAscii 2080 2080 +0.0% 1.00x
StringHasSuffixUnicode 90045 90290 +0.3% 1.00x (?)
StringInterpolation 8085 8073 -0.1% 1.00x (?)
StringInterpolationManySmallSegments 16446 16298 -0.9% 1.01x (?)
StringInterpolationSmall 3904 3891 -0.3% 1.00x (?)
StringMatch 11570 11624 +0.5% 1.00x (?)
StringRemoveDupes 435 436 +0.2% 1.00x (?)
StringUTF16Builder 2335 2323 -0.5% 1.01x (?)
StringUTF16SubstringBuilder 5319 5124 -3.7% 1.04x (?)
StringWithCString 38071 38078 +0.0% 1.00x (?)
StringWordBuilder 2255 2253 -0.1% 1.00x (?)
StringWordBuilderReservingCapacity 1704 1703 -0.1% 1.00x (?)
SubstringComparable 12 12 +0.0% 1.00x
SubstringEqualString 540 541 +0.2% 1.00x (?)
SubstringEquatable 1259 1252 -0.6% 1.01x (?)
SubstringFromLongString 9 9 +0.0% 1.00x
SubstringFromLongStringGeneric 66 66 +0.0% 1.00x
SuffixAnyCollection 27 27 +0.0% 1.00x
SuffixAnyCollectionLazy 19404 19287 -0.6% 1.01x (?)
SuffixAnySeqCRangeIter 3358 3337 -0.6% 1.01x (?)
SuffixAnySeqCRangeIterLazy 3357 3347 -0.3% 1.00x (?)
SuffixAnySeqCntRange 18 18 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 18 18 +0.0% 1.00x
SuffixAnySequence 4390 4399 +0.2% 1.00x (?)
SuffixAnySequenceLazy 4486 4518 +0.7% 0.99x
SuffixCountableRange 10 10 +0.0% 1.00x
SuffixCountableRangeLazy 10 10 +0.0% 1.00x
SuffixSequence 3215 3267 +1.6% 0.98x (?)
SuffixSequenceLazy 3202 3263 +1.9% 0.98x
SumUsingReduce 87 91 +4.6% 0.96x
SumUsingReduceInto 87 91 +4.6% 0.96x
SuperChars 13938 13885 -0.4% 1.00x (?)
TwoSum 1286 1325 +3.0% 0.97x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 266 279 +4.9% 0.95x
Walsh 387 388 +0.3% 1.00x (?)
WordCountHistogramASCII 7276 7249 -0.4% 1.00x (?)
WordCountHistogramUTF16 12680 12642 -0.3% 1.00x (?)
WordCountUniqueASCII 1867 1854 -0.7% 1.01x (?)
WordCountUniqueUTF16 6653 6700 +0.7% 0.99x (?)
WordSplitASCII 6161 6182 +0.3% 1.00x (?)
WordSplitUTF16 7748 7678 -0.9% 1.01x (?)
XorLoop 344 344 +0.0% 1.00x

Unoptimized (Onone)

Regression (13)
TEST OLD NEW DELTA SPEEDUP
CharIteration_punctuated_unicodeScalars_Backwards 58844 65645 +11.6% 0.90x (?)
ArrayPlusEqualFiveElementCollection 196387 217361 +10.7% 0.90x (?)
CharIndexing_japanese_unicodeScalars 349437 384864 +10.1% 0.91x (?)
TypeFlood 178 196 +10.1% 0.91x (?)
DataReplaceMediumBuffer 10162 11130 +9.5% 0.91x (?)
DataReplaceSmallBuffer 7617 8256 +8.4% 0.92x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 8191 8797 +7.4% 0.93x (?)
CharacterPropertiesPrecomputed 3149 3374 +7.1% 0.93x (?)
ObjectiveCBridgeStubFromArrayOfNSString 28721 30545 +6.4% 0.94x (?)
StringUTF16Builder 6752 7151 +5.9% 0.94x (?)
DataAppendDataMediumToMedium 5863 6186 +5.5% 0.95x
RandomDoubleDef 76878 80940 +5.3% 0.95x
CharIteration_russian_unicodeScalars_Backwards 217002 228434 +5.3% 0.95x (?)
Improvement (6)
TEST OLD NEW DELTA SPEEDUP
DataAppendSequence 5637581 1751655 -68.9% 3.22x
DictionaryKeysContainsCocoa 73 62 -15.1% 1.18x (?)
CharacterPropertiesStashedMemo 5056 4618 -8.7% 1.09x (?)
StringBuilderSmallReservingCapacity 4732 4483 -5.3% 1.06x (?)
ObjectiveCBridgeStubToNSDate 14004 13314 -4.9% 1.05x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 43306 41199 -4.9% 1.05x (?)
No Changes (421)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 4486 4492 +0.1% 1.00x (?)
AnyHashableWithAClass 92925 96819 +4.2% 0.96x (?)
Array2D 558730 559185 +0.1% 1.00x (?)
ArrayAppend 4068 4068 +0.0% 1.00x
ArrayAppendArrayOfInt 731 731 +0.0% 1.00x
ArrayAppendAscii 23253 23178 -0.3% 1.00x (?)
ArrayAppendAsciiSubstring 62568 62550 -0.0% 1.00x (?)
ArrayAppendFromGeneric 736 737 +0.1% 1.00x (?)
ArrayAppendGenericStructs 1273 1273 +0.0% 1.00x
ArrayAppendLatin1 57989 57927 -0.1% 1.00x (?)
ArrayAppendLatin1Substring 143028 143077 +0.0% 1.00x (?)
ArrayAppendLazyMap 148144 148190 +0.0% 1.00x (?)
ArrayAppendOptionals 1275 1273 -0.2% 1.00x (?)
ArrayAppendRepeatCol 168879 168800 -0.0% 1.00x (?)
ArrayAppendReserved 3846 3836 -0.3% 1.00x (?)
ArrayAppendSequence 92933 93005 +0.1% 1.00x (?)
ArrayAppendStrings 5743 5761 +0.3% 1.00x (?)
ArrayAppendToFromGeneric 733 732 -0.1% 1.00x (?)
ArrayAppendToGeneric 738 737 -0.1% 1.00x (?)
ArrayAppendUTF16 57649 57853 +0.4% 1.00x (?)
ArrayAppendUTF16Substring 141189 141329 +0.1% 1.00x (?)
ArrayInClass 5690 5723 +0.6% 0.99x
ArrayLiteral 1605 1603 -0.1% 1.00x (?)
ArrayOfGenericPOD2 1061 1061 +0.0% 1.00x
ArrayOfGenericRef 9372 9381 +0.1% 1.00x (?)
ArrayOfPOD 679 679 +0.0% 1.00x
ArrayOfRef 8666 8643 -0.3% 1.00x
ArrayPlusEqualArrayOfInt 732 733 +0.1% 1.00x (?)
ArrayPlusEqualSingleElementCollection 196061 197415 +0.7% 0.99x (?)
ArrayPlusEqualThreeElements 7994 8039 +0.6% 0.99x (?)
ArraySubscript 96937 97115 +0.2% 1.00x (?)
ArrayValueProp 3314 3297 -0.5% 1.01x (?)
ArrayValueProp2 13313 13702 +2.9% 0.97x (?)
ArrayValueProp3 3701 3701 +0.0% 1.00x
ArrayValueProp4 3685 3688 +0.1% 1.00x (?)
BinaryFloatingPointPropertiesBinade 77 77 +0.0% 1.00x
BinaryFloatingPointPropertiesNextUp 119 118 -0.8% 1.01x
BinaryFloatingPointPropertiesUlp 125 125 +0.0% 1.00x
BitCount 7829 7831 +0.0% 1.00x (?)
ByteSwap 8768 8817 +0.6% 0.99x (?)
COWArrayGuaranteedParameterOverhead 12356 12324 -0.3% 1.00x (?)
COWTree 10587 10463 -1.2% 1.01x (?)
CSVParsing 2468725 2463636 -0.2% 1.00x (?)
CSVParsingAlt 1266828 1265760 -0.1% 1.00x (?)
CSVParsingAltIndices 2105050 2086356 -0.9% 1.01x (?)
CStringLongAscii 3730 3695 -0.9% 1.01x
CStringLongNonAscii 2204 2208 +0.2% 1.00x (?)
CStringShortAscii 5528 5593 +1.2% 0.99x (?)
Calculator 871 869 -0.2% 1.00x
CaptureProp 258084 257708 -0.1% 1.00x (?)
ChainedFilterMap 204841 205665 +0.4% 1.00x (?)
CharIndexing_ascii_unicodeScalars 292023 296296 +1.5% 0.99x (?)
CharIndexing_ascii_unicodeScalars_Backwards 369164 364937 -1.1% 1.01x (?)
CharIndexing_chinese_unicodeScalars 222008 231570 +4.3% 0.96x (?)
CharIndexing_chinese_unicodeScalars_Backwards 270863 284588 +5.1% 0.95x (?)
CharIndexing_japanese_unicodeScalars_Backwards 441441 426556 -3.4% 1.03x (?)
CharIndexing_korean_unicodeScalars 284280 278508 -2.0% 1.02x (?)
CharIndexing_korean_unicodeScalars_Backwards 355653 342161 -3.8% 1.04x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 51640 51958 +0.6% 0.99x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 62792 62966 +0.3% 1.00x (?)
CharIndexing_punctuated_unicodeScalars 65925 65743 -0.3% 1.00x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 79553 78259 -1.6% 1.02x (?)
CharIndexing_russian_unicodeScalars 244687 245134 +0.2% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 294198 294668 +0.2% 1.00x (?)
CharIndexing_tweet_unicodeScalars 582412 587334 +0.8% 0.99x (?)
CharIndexing_tweet_unicodeScalars_Backwards 716893 712213 -0.7% 1.01x (?)
CharIndexing_utf16_unicodeScalars 252859 253776 +0.4% 1.00x (?)
CharIndexing_utf16_unicodeScalars_Backwards 313951 308756 -1.7% 1.02x (?)
CharIteration_ascii_unicodeScalars 133179 133173 -0.0% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 258552 263214 +1.8% 0.98x (?)
CharIteration_chinese_unicodeScalars 100591 100364 -0.2% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 195474 196383 +0.5% 1.00x (?)
CharIteration_japanese_unicodeScalars 159241 159509 +0.2% 1.00x (?)
CharIteration_japanese_unicodeScalars_Backwards 313202 312914 -0.1% 1.00x (?)
CharIteration_korean_unicodeScalars 128909 129052 +0.1% 1.00x (?)
CharIteration_korean_unicodeScalars_Backwards 253438 252091 -0.5% 1.01x (?)
CharIteration_punctuatedJapanese_unicodeScalars 23677 23662 -0.1% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 45452 46168 +1.6% 0.98x (?)
CharIteration_punctuated_unicodeScalars 29721 29808 +0.3% 1.00x (?)
CharIteration_russian_unicodeScalars 110873 110724 -0.1% 1.00x (?)
CharIteration_tweet_unicodeScalars 262265 262196 -0.0% 1.00x (?)
CharIteration_tweet_unicodeScalars_Backwards 544088 555031 +2.0% 0.98x (?)
CharIteration_utf16_unicodeScalars 114309 113642 -0.6% 1.01x (?)
CharIteration_utf16_unicodeScalars_Backwards 222410 222713 +0.1% 1.00x (?)
CharacterLiteralsLarge 5157 5153 -0.1% 1.00x (?)
CharacterLiteralsSmall 590 591 +0.2% 1.00x (?)
CharacterPropertiesFetch 5015 5021 +0.1% 1.00x (?)
CharacterPropertiesStashed 2136 2152 +0.7% 0.99x (?)
Chars 30843 30844 +0.0% 1.00x (?)
ClassArrayGetter 862 862 +0.0% 1.00x
Combos 1979 1922 -2.9% 1.03x (?)
DataAccessBytes 2102 2087 -0.7% 1.01x (?)
DataAppendArray 4815 4942 +2.6% 0.97x (?)
DataAppendBytes 4614 4731 +2.5% 0.98x (?)
DataAppendDataLargeToLarge 60830 61354 +0.9% 0.99x (?)
DataAppendDataLargeToMedium 32034 32145 +0.3% 1.00x (?)
DataAppendDataLargeToSmall 31077 31161 +0.3% 1.00x (?)
DataAppendDataMediumToLarge 34341 34575 +0.7% 0.99x (?)
DataAppendDataMediumToSmall 5451 5549 +1.8% 0.98x (?)
DataAppendDataSmallToLarge 33639 33396 -0.7% 1.01x (?)
DataAppendDataSmallToMedium 5673 5700 +0.5% 1.00x (?)
DataAppendDataSmallToSmall 5184 5295 +2.1% 0.98x (?)
DataCopyBytes 443 437 -1.4% 1.01x (?)
DataCount 200 200 +0.0% 1.00x
DataMutateBytes 4605 4712 +2.3% 0.98x (?)
DataReplaceLarge 32890 34231 +4.1% 0.96x (?)
DataReplaceLargeBuffer 50986 52057 +2.1% 0.98x (?)
DataReplaceMedium 7101 7316 +3.0% 0.97x (?)
DataReplaceSmall 4986 5179 +3.9% 0.96x (?)
DataReset 2554 2540 -0.5% 1.01x (?)
DataSetCount 505 506 +0.2% 1.00x (?)
DataSubscript 398 398 +0.0% 1.00x
DictOfArraysToArrayOfDicts 3126 3082 -1.4% 1.01x (?)
Dictionary 1979 1978 -0.1% 1.00x (?)
Dictionary2 1157 1159 +0.2% 1.00x (?)
Dictionary2OfObjects 3762 3797 +0.9% 0.99x (?)
Dictionary3 748 749 +0.1% 1.00x (?)
Dictionary3OfObjects 1906 1936 +1.6% 0.98x (?)
Dictionary4 1073 1073 +0.0% 1.00x
Dictionary4Legacy 1346 1346 +0.0% 1.00x
Dictionary4OfObjects 1604 1599 -0.3% 1.00x (?)
Dictionary4OfObjectsLegacy 1905 1913 +0.4% 1.00x (?)
DictionaryBridge 1195 1163 -2.7% 1.03x (?)
DictionaryCopy 276572 276913 +0.1% 1.00x (?)
DictionaryFilter 285367 285441 +0.0% 1.00x (?)
DictionaryGroup 3910 3912 +0.1% 1.00x (?)
DictionaryGroupOfObjects 6187 6439 +4.1% 0.96x (?)
DictionaryKeysContainsNative 53 52 -1.9% 1.02x (?)
DictionaryLiteral 7754 7763 +0.1% 1.00x (?)
DictionaryOfObjects 5315 5327 +0.2% 1.00x (?)
DictionaryRemove 15128 15140 +0.1% 1.00x (?)
DictionaryRemoveOfObjects 47639 48107 +1.0% 0.99x (?)
DictionarySubscriptDefaultMutation 1770 1771 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutationArray 2000 1995 -0.2% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 8370 8340 -0.4% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 4772 4738 -0.7% 1.01x (?)
DictionarySwap 4374 4371 -0.1% 1.00x (?)
DictionarySwapAt 29250 29250 +0.0% 1.00x
DictionarySwapAtOfObjects 102152 102736 +0.6% 0.99x (?)
DictionarySwapOfObjects 17158 17131 -0.2% 1.00x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 13916 13933 +0.1% 1.00x (?)
DropFirstAnyCollectionLazy 96542 100563 +4.2% 0.96x (?)
DropFirstAnySeqCRangeIter 21295 21296 +0.0% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 21335 21342 +0.0% 1.00x (?)
DropFirstAnySeqCntRange 13941 13939 -0.0% 1.00x (?)
DropFirstAnySeqCntRangeLazy 14062 14077 +0.1% 1.00x (?)
DropFirstAnySequence 11658 11675 +0.1% 1.00x (?)
DropFirstAnySequenceLazy 11942 11860 -0.7% 1.01x
DropFirstArray 3014 3015 +0.0% 1.00x (?)
DropFirstArrayLazy 29647 29687 +0.1% 1.00x (?)
DropFirstCountableRange 309 309 +0.0% 1.00x
DropFirstCountableRangeLazy 31519 31511 -0.0% 1.00x (?)
DropFirstSequence 11342 11365 +0.2% 1.00x (?)
DropFirstSequenceLazy 11576 11570 -0.1% 1.00x (?)
DropLastAnyCollection 4656 4664 +0.2% 1.00x (?)
DropLastAnyCollectionLazy 32471 31527 -2.9% 1.03x (?)
DropLastAnySeqCRangeIter 35737 35589 -0.4% 1.00x (?)
DropLastAnySeqCRangeIterLazy 35343 35328 -0.0% 1.00x (?)
DropLastAnySeqCntRange 4649 4649 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 4659 4668 +0.2% 1.00x (?)
DropLastAnySequence 26269 26152 -0.4% 1.00x (?)
DropLastAnySequenceLazy 26072 26094 +0.1% 1.00x (?)
DropLastCountableRange 107 107 +0.0% 1.00x
DropLastCountableRangeLazy 10573 10574 +0.0% 1.00x (?)
DropLastSequence 26356 26401 +0.2% 1.00x (?)
DropLastSequenceLazy 25929 25907 -0.1% 1.00x (?)
DropWhileAnyCollection 18123 18091 -0.2% 1.00x (?)
DropWhileAnyCollectionLazy 20218 20208 -0.0% 1.00x (?)
DropWhileAnySeqCRangeIter 22201 22197 -0.0% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 20054 20080 +0.1% 1.00x (?)
DropWhileAnySeqCntRange 18302 18126 -1.0% 1.01x (?)
DropWhileAnySeqCntRangeLazy 20124 20131 +0.0% 1.00x (?)
DropWhileAnySequence 12545 12478 -0.5% 1.01x (?)
DropWhileAnySequenceLazy 11130 11093 -0.3% 1.00x (?)
DropWhileArrayLazy 12185 12201 +0.1% 1.00x (?)
DropWhileCountableRange 4420 4421 +0.0% 1.00x (?)
DropWhileCountableRangeLazy 19872 19875 +0.0% 1.00x (?)
DropWhileSequence 12214 12189 -0.2% 1.00x (?)
DropWhileSequenceLazy 10786 10783 -0.0% 1.00x (?)
EqualStringSubstring 64 64 +0.0% 1.00x
EqualSubstringString 64 64 +0.0% 1.00x
EqualSubstringSubstring 65 65 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 52 52 +0.0% 1.00x
ErrorHandling 4954 4988 +0.7% 0.99x (?)
ExclusivityGlobal 177 177 +0.0% 1.00x
ExclusivityIndependent 67 67 +0.0% 1.00x
FatCompactMap 260214 261753 +0.6% 0.99x (?)
FilterEvenUsingReduce 3204 3204 +0.0% 1.00x
FilterEvenUsingReduceInto 1637 1639 +0.1% 1.00x (?)
FloatingPointPrinting_Double_description_small 20092 19975 -0.6% 1.01x (?)
FloatingPointPrinting_Double_description_uniform 30947 30729 -0.7% 1.01x (?)
FloatingPointPrinting_Double_interpolated 85927 82879 -3.5% 1.04x (?)
FloatingPointPrinting_Float80_description_small 26464 26473 +0.0% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 53989 53911 -0.1% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 107793 107646 -0.1% 1.00x (?)
FloatingPointPrinting_Float_description_small 5869 5871 +0.0% 1.00x (?)
FloatingPointPrinting_Float_description_uniform 15580 15594 +0.1% 1.00x (?)
FloatingPointPrinting_Float_interpolated 63891 62517 -2.2% 1.02x (?)
FrequenciesUsingReduce 9351 9591 +2.6% 0.97x (?)
FrequenciesUsingReduceInto 2784 2760 -0.9% 1.01x (?)
Hanoi 17271 17290 +0.1% 1.00x (?)
HashTest 19443 19403 -0.2% 1.00x (?)
Histogram 5513 5498 -0.3% 1.00x (?)
Integrate 526 527 +0.2% 1.00x
IterateData 4445 4462 +0.4% 1.00x (?)
Join 171 170 -0.6% 1.01x
LazilyFilteredArrayContains 656986 659513 +0.4% 1.00x (?)
LazilyFilteredArrays 1266837 1269634 +0.2% 1.00x (?)
LazilyFilteredRange 483267 483227 -0.0% 1.00x (?)
LessSubstringSubstring 65 65 +0.0% 1.00x
LessSubstringSubstringGenericComparable 51 51 +0.0% 1.00x
LinkedList 29038 29042 +0.0% 1.00x (?)
LuhnAlgoEager 5146 5118 -0.5% 1.01x (?)
LuhnAlgoLazy 5295 5353 +1.1% 0.99x (?)
MapReduce 22416 22409 -0.0% 1.00x (?)
MapReduceAnyCollection 22348 22332 -0.1% 1.00x (?)
MapReduceAnyCollectionShort 32800 32732 -0.2% 1.00x (?)
MapReduceClass 25934 25917 -0.1% 1.00x (?)
MapReduceClassShort 35676 35527 -0.4% 1.00x (?)
MapReduceLazyCollection 20095 20080 -0.1% 1.00x (?)
MapReduceLazyCollectionShort 29665 29791 +0.4% 1.00x (?)
MapReduceLazySequence 18128 18108 -0.1% 1.00x (?)
MapReduceSequence 26828 26852 +0.1% 1.00x (?)
MapReduceShort 32831 32776 -0.2% 1.00x (?)
MapReduceShortString 190 190 +0.0% 1.00x
MapReduceString 1551 1528 -1.5% 1.02x (?)
Memset 40190 40182 -0.0% 1.00x (?)
MonteCarloE 1028323 1030608 +0.2% 1.00x (?)
MonteCarloPi 4686450 4693886 +0.2% 1.00x (?)
NSDictionaryCastToSwift 7747 7387 -4.6% 1.05x (?)
NSError 532 536 +0.8% 0.99x (?)
NSStringConversion 653 646 -1.1% 1.01x
NibbleSort 460733 460909 +0.0% 1.00x (?)
NopDeinit 181339 181343 +0.0% 1.00x (?)
ObjectAllocation 1118 1120 +0.2% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObject 24688 24964 +1.1% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 40721 42487 +4.3% 0.96x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 104834 106507 +1.6% 0.98x (?)
ObjectiveCBridgeFromNSSetAnyObject 47841 50309 +5.2% 0.95x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 6176 6279 +1.7% 0.98x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 67712 67899 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSString 2599 2606 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSStringForced 2545 2519 -1.0% 1.01x (?)
ObjectiveCBridgeStubDataAppend 5996 5998 +0.0% 1.00x (?)
ObjectiveCBridgeStubDateMutation 668 693 +3.7% 0.96x
ObjectiveCBridgeStubFromNSDate 6176 6119 -0.9% 1.01x (?)
ObjectiveCBridgeStubFromNSString 957 948 -0.9% 1.01x (?)
ObjectiveCBridgeStubFromNSStringRef 181 181 +0.0% 1.00x
ObjectiveCBridgeStubNSDataAppend 2747 2805 +2.1% 0.98x (?)
ObjectiveCBridgeStubNSDateMutationRef 14113 13890 -1.6% 1.02x (?)
ObjectiveCBridgeStubToArrayOfNSString 36110 36310 +0.6% 0.99x (?)
ObjectiveCBridgeStubToNSDateRef 3118 3119 +0.0% 1.00x (?)
ObjectiveCBridgeStubToNSString 2175 2176 +0.0% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 137 137 +0.0% 1.00x
ObjectiveCBridgeStubURLAppendPath 265027 264196 -0.3% 1.00x (?)
ObjectiveCBridgeStubURLAppendPathRef 265309 268315 +1.1% 0.99x (?)
ObjectiveCBridgeToNSArray 13401 13607 +1.5% 0.98x (?)
ObjectiveCBridgeToNSDictionary 25893 26552 +2.5% 0.98x (?)
ObjectiveCBridgeToNSSet 17024 16639 -2.3% 1.02x (?)
ObjectiveCBridgeToNSString 486 486 +0.0% 1.00x
ObserverClosure 5728 5732 +0.1% 1.00x (?)
ObserverForwarderStruct 3933 3931 -0.1% 1.00x (?)
ObserverPartiallyAppliedMethod 7044 7056 +0.2% 1.00x (?)
ObserverUnappliedMethod 7259 7298 +0.5% 0.99x (?)
OpaqueConsumingUsers 12029 11984 -0.4% 1.00x (?)
OpenClose 467 467 +0.0% 1.00x
PartialApplyDynamicType 36352 35982 -1.0% 1.01x (?)
Phonebook 13654 13670 +0.1% 1.00x (?)
PointerArithmetics 110493 110456 -0.0% 1.00x (?)
PolymorphicCalls 2190 2202 +0.5% 0.99x (?)
PopFrontArray 4147 4149 +0.0% 1.00x (?)
PopFrontArrayGeneric 4616 4608 -0.2% 1.00x (?)
PopFrontUnsafePointer 9995 10014 +0.2% 1.00x (?)
PrefixAnyCollection 13919 13928 +0.1% 1.00x (?)
PrefixAnyCollectionLazy 99167 95985 -3.2% 1.03x (?)
PrefixAnySeqCRangeIter 17019 17071 +0.3% 1.00x (?)
PrefixAnySeqCRangeIterLazy 17006 17015 +0.1% 1.00x (?)
PrefixAnySeqCntRange 13911 13900 -0.1% 1.00x (?)
PrefixAnySeqCntRangeLazy 13979 13999 +0.1% 1.00x (?)
PrefixAnySequence 9454 9453 -0.0% 1.00x (?)
PrefixAnySequenceLazy 9557 9577 +0.2% 1.00x (?)
PrefixArray 3011 3016 +0.2% 1.00x (?)
PrefixArrayLazy 29562 29520 -0.1% 1.00x (?)
PrefixCountableRange 309 309 +0.0% 1.00x
PrefixCountableRangeLazy 31459 31453 -0.0% 1.00x (?)
PrefixSequence 9069 9077 +0.1% 1.00x (?)
PrefixSequenceLazy 9532 9528 -0.0% 1.00x (?)
PrefixWhileAnyCollection 26200 26201 +0.0% 1.00x (?)
PrefixWhileAnyCollectionLazy 16923 16888 -0.2% 1.00x (?)
PrefixWhileAnySeqCRangeIter 30524 30498 -0.1% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 16698 16701 +0.0% 1.00x (?)
PrefixWhileAnySeqCntRange 26236 26269 +0.1% 1.00x (?)
PrefixWhileAnySeqCntRangeLazy 16785 16770 -0.1% 1.00x (?)
PrefixWhileAnySequence 23090 23095 +0.0% 1.00x (?)
PrefixWhileAnySequenceLazy 10261 10263 +0.0% 1.00x (?)
PrefixWhileArray 9113 9113 +0.0% 1.00x
PrefixWhileArrayLazy 10859 10844 -0.1% 1.00x
PrefixWhileCountableRange 12514 12507 -0.1% 1.00x (?)
PrefixWhileCountableRangeLazy 16457 16492 +0.2% 1.00x (?)
PrefixWhileSequence 22951 22991 +0.2% 1.00x (?)
PrefixWhileSequenceLazy 9949 9953 +0.0% 1.00x (?)
Prims 8269 8340 +0.9% 0.99x (?)
PrimsSplit 8476 8502 +0.3% 1.00x (?)
QueueConcrete 13463 13456 -0.1% 1.00x (?)
QueueGeneric 17140 17110 -0.2% 1.00x (?)
RC4 14329 14316 -0.1% 1.00x (?)
RGBHistogram 20987 20939 -0.2% 1.00x (?)
RGBHistogramOfObjects 71673 72891 +1.7% 0.98x (?)
Radix2CooleyTukey 37264 37365 +0.3% 1.00x (?)
Radix2CooleyTukeyf 32077 32189 +0.3% 1.00x (?)
RandomDoubleLCG 57252 56713 -0.9% 1.01x (?)
RandomIntegersDef 40156 40111 -0.1% 1.00x (?)
RandomIntegersLCG 19518 19529 +0.1% 1.00x (?)
RandomShuffleDef 1951141 1950301 -0.0% 1.00x (?)
RandomShuffleLCG 1341605 1341361 -0.0% 1.00x (?)
RangeAssignment 2447 2473 +1.1% 0.99x (?)
RangeIterationSigned 13672 13665 -0.1% 1.00x (?)
RangeReplaceableCollectionPlusDefault 9614 9663 +0.5% 0.99x (?)
RecursiveOwnedParameter 5593 5522 -1.3% 1.01x (?)
RemoveWhereFilterInts 1842 1842 +0.0% 1.00x
RemoveWhereFilterString 1187 1187 +0.0% 1.00x
RemoveWhereFilterStrings 2308 2308 +0.0% 1.00x
RemoveWhereMoveInts 2984 2984 +0.0% 1.00x
RemoveWhereMoveStrings 3479 3481 +0.1% 1.00x (?)
RemoveWhereQuadraticInts 7564 7567 +0.0% 1.00x (?)
RemoveWhereQuadraticString 2292 2289 -0.1% 1.00x (?)
RemoveWhereQuadraticStrings 9009 9021 +0.1% 1.00x (?)
RemoveWhereSwapInts 5380 5382 +0.0% 1.00x (?)
RemoveWhereSwapStrings 6030 6031 +0.0% 1.00x (?)
ReversedArray 11421 11422 +0.0% 1.00x (?)
ReversedBidirectional 40773 40727 -0.1% 1.00x (?)
ReversedDictionary 20333 20306 -0.1% 1.00x (?)
RomanNumbers 1143688 1126944 -1.5% 1.01x (?)
SequenceAlgosAnySequence 11679 11678 -0.0% 1.00x (?)
SequenceAlgosArray 650440 650555 +0.0% 1.00x (?)
SequenceAlgosContiguousArray 255556 255572 +0.0% 1.00x (?)
SequenceAlgosList 7800 7827 +0.3% 1.00x (?)
SequenceAlgosRange 1144624 1144232 -0.0% 1.00x (?)
SequenceAlgosUnfoldSequence 5853 5843 -0.2% 1.00x (?)
SetExclusiveOr 14660 14641 -0.1% 1.00x (?)
SetExclusiveOr_OfObjects 37928 38017 +0.2% 1.00x (?)
SetIntersect 6145 6147 +0.0% 1.00x (?)
SetIntersect_OfObjects 9481 9527 +0.5% 1.00x (?)
SetIsSubsetOf 1065 1066 +0.1% 1.00x (?)
SetIsSubsetOf_OfObjects 2044 2047 +0.1% 1.00x (?)
SetUnion 10621 10641 +0.2% 1.00x (?)
SetUnion_OfObjects 27197 27212 +0.1% 1.00x (?)
SevenBoom 922 920 -0.2% 1.00x (?)
Sim2DArray 39155 39141 -0.0% 1.00x (?)
SortLargeExistentials 8752 8750 -0.0% 1.00x (?)
SortLettersInPlace 1409 1412 +0.2% 1.00x (?)
SortSortedStrings 801 801 +0.0% 1.00x
SortStrings 1653 1654 +0.1% 1.00x (?)
SortStringsUnicode 2635 2634 -0.0% 1.00x (?)
StackPromo 91115 86975 -4.5% 1.05x (?)
StaticArray 2363 2364 +0.0% 1.00x (?)
StrComplexWalk 6133 6133 +0.0% 1.00x
StrToInt 72065 71974 -0.1% 1.00x (?)
StringAdder 688 687 -0.1% 1.00x
StringBuilder 4462 4468 +0.1% 1.00x (?)
StringBuilderLong 1277 1271 -0.5% 1.00x (?)
StringBuilderWithLongSubstring 3083 2987 -3.1% 1.03x (?)
StringComparison_abnormal 1191 1187 -0.3% 1.00x (?)
StringComparison_ascii 7861 7865 +0.1% 1.00x (?)
StringComparison_emoji 1809 1801 -0.4% 1.00x (?)
StringComparison_fastPrenormal 4401 4401 +0.0% 1.00x
StringComparison_latin1 3427 3424 -0.1% 1.00x (?)
StringComparison_longSharedPrefix 2137 2139 +0.1% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 3328 3322 -0.2% 1.00x (?)
StringComparison_slowerPrenormal 3793 3788 -0.1% 1.00x (?)
StringComparison_zalgo 110540 110003 -0.5% 1.00x (?)
StringEdits 327732 319745 -2.4% 1.02x (?)
StringEnumRawValueInitialization 18936 18966 +0.2% 1.00x (?)
StringEqualPointerComparison 1591 1592 +0.1% 1.00x (?)
StringFromLongWholeSubstring 20 20 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 176 176 +0.0% 1.00x
StringHasPrefixAscii 2954 2945 -0.3% 1.00x
StringHasPrefixUnicode 90278 89934 -0.4% 1.00x (?)
StringHasSuffixAscii 3031 3031 +0.0% 1.00x
StringHasSuffixUnicode 91232 91307 +0.1% 1.00x (?)
StringInterpolation 11198 11040 -1.4% 1.01x (?)
StringInterpolationManySmallSegments 17149 16776 -2.2% 1.02x (?)
StringInterpolationSmall 5565 5844 +5.0% 0.95x (?)
StringMatch 33956 34498 +1.6% 0.98x (?)
StringRemoveDupes 644 645 +0.2% 1.00x (?)
StringUTF16SubstringBuilder 18874 18627 -1.3% 1.01x (?)
StringWalk 12099 12104 +0.0% 1.00x (?)
StringWithCString 37052 37054 +0.0% 1.00x (?)
StringWordBuilder 2129 2128 -0.0% 1.00x (?)
StringWordBuilderReservingCapacity 1768 1767 -0.1% 1.00x (?)
SubstringComparable 1418 1410 -0.6% 1.01x (?)
SubstringEqualString 1519 1516 -0.2% 1.00x (?)
SubstringEquatable 4816 4826 +0.2% 1.00x (?)
SubstringFromLongString 13 13 +0.0% 1.00x
SubstringFromLongStringGeneric 95 95 +0.0% 1.00x
SuffixAnyCollection 4645 4668 +0.5% 1.00x (?)
SuffixAnyCollectionLazy 33055 32508 -1.7% 1.02x (?)
SuffixAnySeqCRangeIter 31824 31832 +0.0% 1.00x (?)
SuffixAnySeqCRangeIterLazy 31807 31794 -0.0% 1.00x (?)
SuffixAnySeqCntRange 4679 4671 -0.2% 1.00x (?)
SuffixAnySeqCntRangeLazy 4677 4686 +0.2% 1.00x (?)
SuffixAnySequence 22883 22853 -0.1% 1.00x (?)
SuffixAnySequenceLazy 22643 22647 +0.0% 1.00x (?)
SuffixCountableRange 107 107 +0.0% 1.00x
SuffixCountableRangeLazy 10557 10564 +0.1% 1.00x (?)
SuffixSequence 22850 22845 -0.0% 1.00x (?)
SuffixSequenceLazy 22701 22664 -0.2% 1.00x (?)
SumUsingReduce 139401 139381 -0.0% 1.00x (?)
SumUsingReduceInto 133341 133312 -0.0% 1.00x (?)
SuperChars 73030 73191 +0.2% 1.00x (?)
TwoSum 3111 3093 -0.6% 1.01x (?)
UTF8Decode 26248 26241 -0.0% 1.00x (?)
Walsh 10840 10829 -0.1% 1.00x (?)
WordCountHistogramASCII 34430 34437 +0.0% 1.00x (?)
WordCountHistogramUTF16 42835 42934 +0.2% 1.00x (?)
WordCountUniqueASCII 6230 6388 +2.5% 0.98x (?)
WordCountUniqueUTF16 12216 12130 -0.7% 1.01x (?)
WordSplitASCII 9303 8933 -4.0% 1.04x (?)
WordSplitUTF16 11014 11156 +1.3% 0.99x (?)
XorLoop 20969 20963 -0.0% 1.00x (?)
Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 8-Core Intel Xeon E5
  Processor Speed: 3 GHz
  Number of Processors: 1
  Total Number of Cores: 8
  L2 Cache (per Core): 256 KB
  L3 Cache: 25 MB
  Memory: 64 GB

@phausler phausler merged commit d6bf8e3 into swiftlang:master Jun 11, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants