Skip to content

[stdlib] Factor out unsafe pointer stuff into _Pointer extensions #17628

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed

Conversation

airspeedswift
Copy link
Member

@airspeedswift airspeedswift commented Jun 29, 2018

There is a lot of boilerplate across Unsafe{Raw}{Mutable}Pointer that can instead be done via protocol extensions on the already-existing _Pointer protocol, since it's all identical and only relies on access to the underlying builtin pointer. This reduces the actual code to the point where it makes sense to de-gyb the file. Since most of this code is transparent anyway, it should make little difference to performance.

More code could be shared via the introduction of additional protocols (like for mutable pointers) but that's probably not worth it.

@airspeedswift
Copy link
Member Author

@swift-ci please smoke benchmark

@airspeedswift
Copy link
Member Author

@swift-ci please smoke test compiler performance

@airspeedswift
Copy link
Member Author

@swift-ci please smoke benchmark

@airspeedswift
Copy link
Member Author

@swift-ci please smoke test compiler performance

@swift-ci
Copy link
Contributor

Build comment file:

Summary for master smoketest

Unexpected test results, excluded stats for ReactiveCocoa

No regressions above thresholds

Debug

debug brief

Regressed (0)
name old new delta delta_pct
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (2)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 35,968,790 35,898,472 -70,318 -0.2%
time.swift-driver.wall 77.6s 77.2s -336.5ms -0.43%

debug detailed

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Sema.NumLazyIterableDeclContexts 343,360 336,764 -6,596 -1.92% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (22)
name old new delta delta_pct
AST.NumImportedExternalDefinitions 84,871 84,845 -26 -0.03%
AST.NumLoadedModules 12,998 12,998 0 0.0%
AST.NumTotalClangImportedEntities 258,497 258,399 -98 -0.04%
AST.NumUsedConformances 8,754 8,753 -1 -0.01%
IRModule.NumIRBasicBlocks 127,631 127,514 -117 -0.09%
IRModule.NumIRFunctions 75,834 75,670 -164 -0.22%
IRModule.NumIRGlobals 68,975 68,681 -294 -0.43%
IRModule.NumIRInsts 1,424,400 1,424,039 -361 -0.03%
IRModule.NumIRValueSymbols 129,687 129,262 -425 -0.33%
LLVM.NumLLVMBytesOutput 35,968,790 35,898,472 -70,318 -0.2%
SILModule.NumSILGenFunctions 42,877 42,780 -97 -0.23%
SILModule.NumSILOptFunctions 47,278 47,121 -157 -0.33%
Sema.NumConformancesDeserialized 357,738 356,795 -943 -0.26%
Sema.NumConstraintScopes 896,445 893,305 -3,140 -0.35%
Sema.NumDeclsDeserialized 2,117,021 2,098,426 -18,595 -0.88%
Sema.NumDeclsValidated 189,609 189,609 0 0.0%
Sema.NumFunctionsTypechecked 48,071 48,071 0 0.0%
Sema.NumGenericSignatureBuilders 81,738 82,245 507 0.62%
Sema.NumLazyGenericEnvironments 424,937 422,441 -2,496 -0.59%
Sema.NumLazyGenericEnvironmentsLoaded 38,845 39,065 220 0.57%
Sema.NumTypesDeserialized 2,335,528 2,313,848 -21,680 -0.93%
Sema.NumTypesValidated 163,167 163,167 0 0.0%

Release

release brief

Regressed (0)
name old new delta delta_pct
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (2)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 26,788,264 26,765,292 -22,972 -0.09%
time.swift-driver.wall 156.5s 157.5s 957.6ms 0.61%

release detailed

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Sema.NumLazyIterableDeclContexts 20,812 20,344 -468 -2.25% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (22)
name old new delta delta_pct
AST.NumImportedExternalDefinitions 8,857 8,857 0 0.0%
AST.NumLoadedModules 408 408 0 0.0%
AST.NumTotalClangImportedEntities 25,776 25,776 0 0.0%
AST.NumUsedConformances 8,760 8,759 -1 -0.01%
IRModule.NumIRBasicBlocks 147,904 148,337 433 0.29%
IRModule.NumIRFunctions 57,391 57,354 -37 -0.06%
IRModule.NumIRGlobals 55,393 55,209 -184 -0.33%
IRModule.NumIRInsts 1,211,165 1,215,034 3,869 0.32%
IRModule.NumIRValueSymbols 103,429 103,234 -195 -0.19%
LLVM.NumLLVMBytesOutput 26,788,264 26,765,292 -22,972 -0.09%
SILModule.NumSILGenFunctions 22,243 22,181 -62 -0.28%
SILModule.NumSILOptFunctions 35,945 35,909 -36 -0.1%
Sema.NumConformancesDeserialized 85,743 86,183 440 0.51%
Sema.NumConstraintScopes 796,058 792,918 -3,140 -0.39%
Sema.NumDeclsDeserialized 204,817 203,207 -1,610 -0.79%
Sema.NumDeclsValidated 59,866 59,866 0 0.0%
Sema.NumFunctionsTypechecked 10,716 10,716 0 0.0%
Sema.NumGenericSignatureBuilders 9,743 9,753 10 0.1%
Sema.NumLazyGenericEnvironments 32,308 32,112 -196 -0.61%
Sema.NumLazyGenericEnvironmentsLoaded 4,609 4,585 -24 -0.52%
Sema.NumTypesDeserialized 268,405 266,785 -1,620 -0.6%
Sema.NumTypesValidated 33,026 33,026 0 0.0%

@swift-ci
Copy link
Contributor

Build comment file:

Optimized (O)

Regression (11)
TEST OLD NEW DELTA SPEEDUP
StringBuilderWithLongSubstring 1459 1729 +18.5% 0.84x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 4567 5239 +14.7% 0.87x (?)
StringBuilderSmallReservingCapacity 456 498 +9.2% 0.92x
WordCountUniqueUTF16 7455 8137 +9.1% 0.92x
DropLastCountableRange 11 12 +9.1% 0.92x
DataMutateBytes 3868 4156 +7.4% 0.93x
StringWordBuilderReservingCapacity 1807 1936 +7.1% 0.93x
DataReplaceMedium 7751 8223 +6.1% 0.94x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 71668 75702 +5.6% 0.95x (?)
COWArrayGuaranteedParameterOverhead 8649 9126 +5.5% 0.95x
StringWordBuilder 2210 2327 +5.3% 0.95x
Improvement (7)
TEST OLD NEW DELTA SPEEDUP
StringBuilderLong 1769 1243 -29.7% 1.42x (?)
UTF8Decode_InitFromBytes_ascii 609 486 -20.2% 1.25x (?)
DataAppendDataSmallToLarge 44232 38041 -14.0% 1.16x (?)
DataSetCount 614 551 -10.3% 1.11x (?)
DropLastCountableRangeLazy 12 11 -8.3% 1.09x
ObjectiveCBridgeFromNSSetAnyObjectForced 5364 4927 -8.1% 1.09x
DataAppendDataSmallToSmall 6396 5899 -7.8% 1.08x (?)
No Changes (428)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3822 3827 +0.1% 1.00x (?)
AnyHashableWithAClass 85979 86686 +0.8% 0.99x
Array2D 2853 2854 +0.0% 1.00x (?)
ArrayAppend 1090 1109 +1.7% 0.98x
ArrayAppendArrayOfInt 800 801 +0.1% 1.00x (?)
ArrayAppendAscii 3835 3934 +2.6% 0.97x
ArrayAppendAsciiSubstring 24905 24895 -0.0% 1.00x (?)
ArrayAppendFromGeneric 800 800 +0.0% 1.00x
ArrayAppendGenericStructs 1423 1432 +0.6% 0.99x
ArrayAppendLatin1 41925 42097 +0.4% 1.00x
ArrayAppendLatin1Substring 142801 141736 -0.7% 1.01x
ArrayAppendLazyMap 1346 1344 -0.1% 1.00x
ArrayAppendOptionals 1427 1427 +0.0% 1.00x
ArrayAppendRepeatCol 1341 1345 +0.3% 1.00x (?)
ArrayAppendReserved 814 841 +3.3% 0.97x
ArrayAppendSequence 1143 1122 -1.8% 1.02x
ArrayAppendStrings 6228 6223 -0.1% 1.00x (?)
ArrayAppendToFromGeneric 800 797 -0.4% 1.00x (?)
ArrayAppendToGeneric 784 800 +2.0% 0.98x (?)
ArrayAppendUTF16 41723 42217 +1.2% 0.99x
ArrayAppendUTF16Substring 139412 140328 +0.7% 0.99x
ArrayInClass 86 86 +0.0% 1.00x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 150 150 +0.0% 1.00x
ArrayOfGenericRef 4388 4375 -0.3% 1.00x (?)
ArrayOfPOD 184 185 +0.5% 0.99x (?)
ArrayOfRef 4399 4394 -0.1% 1.00x (?)
ArrayPlusEqualArrayOfInt 799 800 +0.1% 1.00x (?)
ArrayPlusEqualFiveElementCollection 5568 5696 +2.3% 0.98x
ArrayPlusEqualSingleElementCollection 1077 1109 +3.0% 0.97x
ArrayPlusEqualThreeElements 1693 1658 -2.1% 1.02x (?)
ArraySubscript 1541 1556 +1.0% 0.99x (?)
ArrayValueProp 8 8 +0.0% 1.00x
ArrayValueProp2 8 8 +0.0% 1.00x
ArrayValueProp3 8 8 +0.0% 1.00x
ArrayValueProp4 8 8 +0.0% 1.00x
BinaryFloatingPointPropertiesBinade 31 31 +0.0% 1.00x
BinaryFloatingPointPropertiesNextUp 28 28 +0.0% 1.00x
BinaryFloatingPointPropertiesUlp 37 37 +0.0% 1.00x
BitCount 211 211 +0.0% 1.00x
ByteSwap 102 103 +1.0% 0.99x (?)
COWTree 3863 3837 -0.7% 1.01x (?)
CSVParsing 656111 656766 +0.1% 1.00x (?)
CSVParsingAlt 812779 813283 +0.1% 1.00x (?)
CSVParsingAltIndices 339448 341250 +0.5% 0.99x (?)
CStringLongAscii 4113 4037 -1.8% 1.02x
CStringLongNonAscii 2341 2344 +0.1% 1.00x (?)
CStringShortAscii 3314 3322 +0.2% 1.00x (?)
Calculator 206 206 +0.0% 1.00x
CaptureProp 4097 4092 -0.1% 1.00x (?)
ChainedFilterMap 1247 1248 +0.1% 1.00x (?)
CharIndexing_ascii_unicodeScalars 16968 17153 +1.1% 0.99x
CharIndexing_ascii_unicodeScalars_Backwards 16008 16184 +1.1% 0.99x
CharIndexing_chinese_unicodeScalars 12856 12997 +1.1% 0.99x
CharIndexing_chinese_unicodeScalars_Backwards 12133 12247 +0.9% 0.99x
CharIndexing_japanese_unicodeScalars 20331 20545 +1.1% 0.99x
CharIndexing_japanese_unicodeScalars_Backwards 19158 19360 +1.1% 0.99x
CharIndexing_korean_unicodeScalars 16454 16646 +1.2% 0.99x
CharIndexing_korean_unicodeScalars_Backwards 15528 15692 +1.1% 0.99x
CharIndexing_punctuatedJapanese_unicodeScalars 3068 3092 +0.8% 0.99x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2911 2930 +0.7% 0.99x
CharIndexing_punctuated_unicodeScalars 3843 3873 +0.8% 0.99x
CharIndexing_punctuated_unicodeScalars_Backwards 3621 3646 +0.7% 0.99x
CharIndexing_russian_unicodeScalars 14139 14282 +1.0% 0.99x
CharIndexing_russian_unicodeScalars_Backwards 13341 13487 +1.1% 0.99x
CharIndexing_tweet_unicodeScalars 32753 33158 +1.2% 0.99x
CharIndexing_tweet_unicodeScalars_Backwards 31225 31876 +2.1% 0.98x
CharIndexing_utf16_unicodeScalars 23013 23030 +0.1% 1.00x (?)
CharIndexing_utf16_unicodeScalars_Backwards 23239 23298 +0.3% 1.00x
CharIteration_ascii_unicodeScalars 21618 22315 +3.2% 0.97x
CharIteration_ascii_unicodeScalars_Backwards 15153 15342 +1.2% 0.99x
CharIteration_chinese_unicodeScalars 16364 16836 +2.9% 0.97x
CharIteration_chinese_unicodeScalars_Backwards 11476 11633 +1.4% 0.99x
CharIteration_japanese_unicodeScalars 25896 26839 +3.6% 0.96x
CharIteration_japanese_unicodeScalars_Backwards 18124 18366 +1.3% 0.99x
CharIteration_korean_unicodeScalars 20988 21684 +3.3% 0.97x
CharIteration_korean_unicodeScalars_Backwards 14679 14897 +1.5% 0.99x
CharIteration_punctuatedJapanese_unicodeScalars 3864 3958 +2.4% 0.98x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2751 2785 +1.2% 0.99x
CharIteration_punctuated_unicodeScalars 4856 4994 +2.8% 0.97x
CharIteration_punctuated_unicodeScalars_Backwards 3439 3485 +1.3% 0.99x
CharIteration_russian_unicodeScalars 17983 18458 +2.6% 0.97x
CharIteration_russian_unicodeScalars_Backwards 12613 12790 +1.4% 0.99x
CharIteration_tweet_unicodeScalars 42683 43195 +1.2% 0.99x
CharIteration_tweet_unicodeScalars_Backwards 29978 30358 +1.3% 0.99x
CharIteration_utf16_unicodeScalars 28104 28409 +1.1% 0.99x
CharIteration_utf16_unicodeScalars_Backwards 18420 18484 +0.3% 1.00x (?)
CharacterLiteralsLarge 5829 5850 +0.4% 1.00x (?)
CharacterLiteralsSmall 220 220 +0.0% 1.00x
CharacterPropertiesFetch 4638 4624 -0.3% 1.00x (?)
CharacterPropertiesPrecomputed 1055 1043 -1.1% 1.01x
CharacterPropertiesStashed 1494 1514 +1.3% 0.99x
CharacterPropertiesStashedMemo 1589 1598 +0.6% 0.99x (?)
Chars 1020 1019 -0.1% 1.00x
ClassArrayGetter 15 15 +0.0% 1.00x
Combos 487 487 +0.0% 1.00x
DataAccessBytes 1140 1143 +0.3% 1.00x (?)
DataAppendArray 5544 5386 -2.8% 1.03x (?)
DataAppendBytes 5523 5590 +1.2% 0.99x (?)
DataAppendDataLargeToLarge 69619 68454 -1.7% 1.02x (?)
DataAppendDataLargeToMedium 35452 35594 +0.4% 1.00x (?)
DataAppendDataLargeToSmall 34456 35319 +2.5% 0.98x (?)
DataAppendDataMediumToLarge 38949 37910 -2.7% 1.03x (?)
DataAppendDataMediumToMedium 6846 6962 +1.7% 0.98x (?)
DataAppendDataMediumToSmall 6278 6007 -4.3% 1.05x (?)
DataAppendDataSmallToMedium 6534 6745 +3.2% 0.97x (?)
DataAppendSequence 20415 20961 +2.7% 0.97x (?)
DataCopyBytes 500 512 +2.4% 0.98x (?)
DataCount 37 37 +0.0% 1.00x
DataReplaceLarge 36989 37800 +2.2% 0.98x (?)
DataReplaceLargeBuffer 57625 58058 +0.8% 0.99x (?)
DataReplaceMediumBuffer 12377 11859 -4.2% 1.04x (?)
DataReplaceSmall 5631 5568 -1.1% 1.01x (?)
DataReplaceSmallBuffer 8373 8349 -0.3% 1.00x (?)
DataReset 2858 2804 -1.9% 1.02x (?)
DataSubscript 220 220 +0.0% 1.00x
DictOfArraysToArrayOfDicts 812 797 -1.8% 1.02x (?)
Dictionary 506 509 +0.6% 0.99x
Dictionary2 635 633 -0.3% 1.00x (?)
Dictionary2OfObjects 2080 2078 -0.1% 1.00x (?)
Dictionary3 224 226 +0.9% 0.99x
Dictionary3OfObjects 735 735 +0.0% 1.00x
Dictionary4 324 325 +0.3% 1.00x
Dictionary4Legacy 738 738 +0.0% 1.00x
Dictionary4OfObjects 445 446 +0.2% 1.00x (?)
Dictionary4OfObjectsLegacy 960 957 -0.3% 1.00x (?)
DictionaryBridge 1230 1237 +0.6% 0.99x (?)
DictionaryCopy 106848 107598 +0.7% 0.99x (?)
DictionaryFilter 106573 107028 +0.4% 1.00x (?)
DictionaryGroup 215 215 +0.0% 1.00x
DictionaryGroupOfObjects 2119 2135 +0.8% 0.99x (?)
DictionaryKeysContainsCocoa 43 41 -4.7% 1.05x (?)
DictionaryKeysContainsNative 33 32 -3.0% 1.03x (?)
DictionaryLiteral 1913 1914 +0.1% 1.00x (?)
DictionaryOfObjects 2369 2379 +0.4% 1.00x (?)
DictionaryRemove 4193 4185 -0.2% 1.00x (?)
DictionaryRemoveOfObjects 25655 25842 +0.7% 0.99x (?)
DictionarySubscriptDefaultMutation 267 268 +0.4% 1.00x (?)
DictionarySubscriptDefaultMutationArray 605 606 +0.2% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 4032 4000 -0.8% 1.01x
DictionarySubscriptDefaultMutationOfObjects 1721 1725 +0.2% 1.00x (?)
DictionarySwap 1040 1033 -0.7% 1.01x
DictionarySwapAt 6621 6741 +1.8% 0.98x (?)
DictionarySwapAtOfObjects 52475 52507 +0.1% 1.00x (?)
DictionarySwapOfObjects 8826 8768 -0.7% 1.01x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 76 76 +0.0% 1.00x
DropFirstAnyCollectionLazy 65103 64549 -0.9% 1.01x (?)
DropFirstAnySeqCRangeIter 93 93 +0.0% 1.00x
DropFirstAnySeqCRangeIterLazy 93 93 +0.0% 1.00x
DropFirstAnySeqCntRange 71 71 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 71 71 +0.0% 1.00x
DropFirstAnySequence 1844 1842 -0.1% 1.00x
DropFirstAnySequenceLazy 1842 1842 +0.0% 1.00x
DropFirstArray 35 35 +0.0% 1.00x
DropFirstArrayLazy 35 35 +0.0% 1.00x
DropFirstCountableRange 35 35 +0.0% 1.00x
DropFirstCountableRangeLazy 35 35 +0.0% 1.00x
DropFirstSequence 2683 2683 +0.0% 1.00x
DropFirstSequenceLazy 2775 2777 +0.1% 1.00x
DropLastAnyCollection 28 28 +0.0% 1.00x
DropLastAnyCollectionLazy 21717 21305 -1.9% 1.02x (?)
DropLastAnySeqCRangeIter 3289 3292 +0.1% 1.00x (?)
DropLastAnySeqCRangeIterLazy 3296 3300 +0.1% 1.00x (?)
DropLastAnySeqCntRange 11 11 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 11 11 +0.0% 1.00x
DropLastAnySequence 5010 4940 -1.4% 1.01x
DropLastAnySequenceLazy 5097 5048 -1.0% 1.01x
DropLastSequence 663 666 +0.5% 1.00x (?)
DropLastSequenceLazy 665 664 -0.2% 1.00x (?)
DropWhileAnyCollection 100 100 +0.0% 1.00x
DropWhileAnyCollectionLazy 130 130 +0.0% 1.00x
DropWhileAnySeqCRangeIter 76 76 +0.0% 1.00x
DropWhileAnySeqCRangeIterLazy 130 130 +0.0% 1.00x
DropWhileAnySeqCntRange 95 95 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 130 130 +0.0% 1.00x
DropWhileAnySequence 1860 1861 +0.1% 1.00x (?)
DropWhileAnySequenceLazy 1855 1854 -0.1% 1.00x (?)
DropWhileArrayLazy 88 88 +0.0% 1.00x
DropWhileCountableRange 36 36 +0.0% 1.00x
DropWhileCountableRangeLazy 105 105 +0.0% 1.00x
DropWhileSequence 2220 2220 +0.0% 1.00x
DropWhileSequenceLazy 88 88 +0.0% 1.00x
EqualStringSubstring 50 50 +0.0% 1.00x
EqualSubstringString 50 50 +0.0% 1.00x
EqualSubstringSubstring 50 50 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 50 50 +0.0% 1.00x
ErrorHandling 1213 1218 +0.4% 1.00x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FatCompactMap 200527 200502 -0.0% 1.00x (?)
FilterEvenUsingReduce 1311 1317 +0.5% 1.00x (?)
FilterEvenUsingReduceInto 147 149 +1.4% 0.99x (?)
FloatingPointPrinting_Double_description_small 21658 21781 +0.6% 0.99x (?)
FloatingPointPrinting_Double_description_uniform 21153 21060 -0.4% 1.00x (?)
FloatingPointPrinting_Double_interpolated 62502 62233 -0.4% 1.00x (?)
FloatingPointPrinting_Float80_description_small 28466 28349 -0.4% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 27907 27464 -1.6% 1.02x
FloatingPointPrinting_Float80_interpolated 68034 67855 -0.3% 1.00x (?)
FloatingPointPrinting_Float_description_small 5606 5509 -1.7% 1.02x
FloatingPointPrinting_Float_description_uniform 5591 5362 -4.1% 1.04x
FloatingPointPrinting_Float_interpolated 38658 38377 -0.7% 1.01x
FrequenciesUsingReduce 5264 5176 -1.7% 1.02x
FrequenciesUsingReduceInto 1509 1521 +0.8% 0.99x (?)
Hanoi 2133 2117 -0.8% 1.01x
HashTest 967 965 -0.2% 1.00x (?)
Histogram 700 694 -0.9% 1.01x
Integrate 350 350 +0.0% 1.00x
IterateData 1541 1584 +2.8% 0.97x
Join 171 172 +0.6% 0.99x
LazilyFilteredArrayContains 38659 38677 +0.0% 1.00x (?)
LazilyFilteredArrays 65135 66339 +1.8% 0.98x
LazilyFilteredRange 3701 3880 +4.8% 0.95x (?)
LessSubstringSubstring 50 50 +0.0% 1.00x
LessSubstringSubstringGenericComparable 50 50 +0.0% 1.00x
LinkedList 7546 7588 +0.6% 0.99x
LuhnAlgoEager 458 455 -0.7% 1.01x (?)
LuhnAlgoLazy 458 446 -2.6% 1.03x
MapReduce 400 400 +0.0% 1.00x
MapReduceAnyCollection 399 399 +0.0% 1.00x
MapReduceAnyCollectionShort 2050 2060 +0.5% 1.00x
MapReduceClass 2993 3024 +1.0% 0.99x
MapReduceClassShort 4563 4578 +0.3% 1.00x (?)
MapReduceLazyCollection 13 13 +0.0% 1.00x
MapReduceLazyCollectionShort 34 34 +0.0% 1.00x
MapReduceLazySequence 86 86 +0.0% 1.00x
MapReduceSequence 462 466 +0.9% 0.99x
MapReduceShort 2015 2017 +0.1% 1.00x (?)
MapReduceShortString 20 20 +0.0% 1.00x
MapReduceString 48 48 +0.0% 1.00x
Memset 220 216 -1.8% 1.02x (?)
MonteCarloE 10338 10359 +0.2% 1.00x
MonteCarloPi 42781 42816 +0.1% 1.00x (?)
NSDictionaryCastToSwift 7288 6980 -4.2% 1.04x (?)
NSError 166 166 +0.0% 1.00x
NSStringConversion 701 697 -0.6% 1.01x (?)
NibbleSort 3669 3669 +0.0% 1.00x
NopDeinit 32328 32345 +0.1% 1.00x (?)
ObjectAllocation 132 134 +1.5% 0.99x
ObjectiveCBridgeFromNSArrayAnyObject 25019 25455 +1.7% 0.98x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 46534 47974 +3.1% 0.97x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 47084 45217 -4.0% 1.04x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 113301 110531 -2.4% 1.03x (?)
ObjectiveCBridgeFromNSSetAnyObject 55616 55977 +0.6% 0.99x (?)
ObjectiveCBridgeFromNSString 1247 1246 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSStringForced 2722 2697 -0.9% 1.01x (?)
ObjectiveCBridgeStubDataAppend 6304 6495 +3.0% 0.97x
ObjectiveCBridgeStubDateMutation 400 401 +0.2% 1.00x
ObjectiveCBridgeStubFromArrayOfNSString 35323 34483 -2.4% 1.02x (?)
ObjectiveCBridgeStubFromNSDate 6249 6222 -0.4% 1.00x
ObjectiveCBridgeStubFromNSString 1002 1039 +3.7% 0.96x (?)
ObjectiveCBridgeStubFromNSStringRef 158 158 +0.0% 1.00x
ObjectiveCBridgeStubNSDataAppend 2518 2549 +1.2% 0.99x (?)
ObjectiveCBridgeStubNSDateMutationRef 13578 13350 -1.7% 1.02x (?)
ObjectiveCBridgeStubToArrayOfNSString 39994 41442 +3.6% 0.97x (?)
ObjectiveCBridgeStubToNSDate 15668 15609 -0.4% 1.00x (?)
ObjectiveCBridgeStubToNSDateRef 3451 3475 +0.7% 0.99x (?)
ObjectiveCBridgeStubToNSString 2342 2340 -0.1% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 112 113 +0.9% 0.99x
ObjectiveCBridgeStubURLAppendPath 277317 284536 +2.6% 0.97x (?)
ObjectiveCBridgeStubURLAppendPathRef 292098 285600 -2.2% 1.02x
ObjectiveCBridgeToNSArray 15492 14858 -4.1% 1.04x (?)
ObjectiveCBridgeToNSDictionary 28468 27514 -3.4% 1.03x (?)
ObjectiveCBridgeToNSSet 17343 17102 -1.4% 1.01x (?)
ObjectiveCBridgeToNSString 464 452 -2.6% 1.03x
ObserverClosure 2161 2153 -0.4% 1.00x
ObserverForwarderStruct 1218 1215 -0.2% 1.00x (?)
ObserverPartiallyAppliedMethod 3704 3725 +0.6% 0.99x
ObserverUnappliedMethod 2465 2462 -0.1% 1.00x (?)
OpaqueConsumingUsers 4182 4184 +0.0% 1.00x (?)
OpenClose 65 65 +0.0% 1.00x
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 6613 6608 -0.1% 1.00x (?)
PointerArithmetics 31515 31494 -0.1% 1.00x (?)
PolymorphicCalls 25 25 +0.0% 1.00x
PopFrontArray 1967 1973 +0.3% 1.00x (?)
PopFrontArrayGeneric 1976 1978 +0.1% 1.00x (?)
PopFrontUnsafePointer 9571 9551 -0.2% 1.00x (?)
PrefixAnyCollection 76 76 +0.0% 1.00x
PrefixAnyCollectionLazy 64849 63913 -1.4% 1.01x
PrefixAnySeqCRangeIter 40 40 +0.0% 1.00x
PrefixAnySeqCRangeIterLazy 40 40 +0.0% 1.00x
PrefixAnySeqCntRange 71 71 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 71 71 +0.0% 1.00x
PrefixAnySequence 1378 1379 +0.1% 1.00x
PrefixAnySequenceLazy 1379 1378 -0.1% 1.00x
PrefixArray 35 35 +0.0% 1.00x
PrefixArrayLazy 35 35 +0.0% 1.00x
PrefixCountableRange 35 35 +0.0% 1.00x
PrefixCountableRangeLazy 35 35 +0.0% 1.00x
PrefixSequence 2222 2222 +0.0% 1.00x
PrefixSequenceLazy 2275 2276 +0.0% 1.00x (?)
PrefixWhileAnyCollection 147 147 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 71 71 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 380 381 +0.3% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 89 89 +0.0% 1.00x
PrefixWhileAnySeqCntRange 142 142 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 71 71 +0.0% 1.00x
PrefixWhileAnySequence 1536 1533 -0.2% 1.00x (?)
PrefixWhileAnySequenceLazy 1392 1391 -0.1% 1.00x
PrefixWhileArray 88 88 +0.0% 1.00x
PrefixWhileArrayLazy 70 70 +0.0% 1.00x
PrefixWhileCountableRange 36 36 +0.0% 1.00x
PrefixWhileCountableRangeLazy 35 35 +0.0% 1.00x
PrefixWhileSequence 357 357 +0.0% 1.00x
PrefixWhileSequenceLazy 52 52 +0.0% 1.00x
Prims 904 903 -0.1% 1.00x (?)
PrimsSplit 900 901 +0.1% 1.00x (?)
QueueConcrete 1152 1149 -0.3% 1.00x
QueueGeneric 1154 1148 -0.5% 1.01x
RC4 161 160 -0.6% 1.01x
RGBHistogram 3215 3188 -0.8% 1.01x (?)
RGBHistogramOfObjects 23744 23654 -0.4% 1.00x
Radix2CooleyTukey 12425 12444 +0.2% 1.00x (?)
Radix2CooleyTukeyf 8936 8937 +0.0% 1.00x (?)
RandomDoubleDef 26830 26749 -0.3% 1.00x
RandomDoubleLCG 2904 2907 +0.1% 1.00x
RandomIntegersDef 24355 24477 +0.5% 1.00x (?)
RandomIntegersLCG 995 994 -0.1% 1.00x
RandomShuffleDef 812299 804551 -1.0% 1.01x
RandomShuffleLCG 121623 120370 -1.0% 1.01x (?)
RangeAssignment 352 352 +0.0% 1.00x
RangeIterationSigned 171 171 +0.0% 1.00x
RangeReplaceableCollectionPlusDefault 1008 1013 +0.5% 1.00x (?)
RecursiveOwnedParameter 115 115 +0.0% 1.00x
RemoveWhereFilterInts 47 47 +0.0% 1.00x
RemoveWhereFilterString 243 244 +0.4% 1.00x (?)
RemoveWhereFilterStrings 438 438 +0.0% 1.00x
RemoveWhereMoveInts 15 15 +0.0% 1.00x
RemoveWhereMoveStrings 709 711 +0.3% 1.00x
RemoveWhereQuadraticInts 1296 1299 +0.2% 1.00x
RemoveWhereQuadraticString 378 378 +0.0% 1.00x
RemoveWhereQuadraticStrings 2763 2765 +0.1% 1.00x
RemoveWhereSwapInts 19 19 +0.0% 1.00x
RemoveWhereSwapStrings 859 860 +0.1% 1.00x (?)
ReversedArray 57 57 +0.0% 1.00x
ReversedBidirectional 16881 16895 +0.1% 1.00x (?)
ReversedDictionary 263 262 -0.4% 1.00x (?)
RomanNumbers 83243 85583 +2.8% 0.97x (?)
SequenceAlgosAnySequence 11990 12064 +0.6% 0.99x
SequenceAlgosArray 1574 1578 +0.3% 1.00x (?)
SequenceAlgosContiguousArray 1577 1577 +0.0% 1.00x
SequenceAlgosList 1347 1347 +0.0% 1.00x
SequenceAlgosRange 2576 2576 +0.0% 1.00x
SequenceAlgosUnfoldSequence 1102 1102 +0.0% 1.00x
SetExclusiveOr 5079 5124 +0.9% 0.99x
SetExclusiveOr_OfObjects 11645 11727 +0.7% 0.99x (?)
SetIntersect 682 682 +0.0% 1.00x
SetIntersect_OfObjects 1810 1738 -4.0% 1.04x
SetIsSubsetOf 341 341 +0.0% 1.00x
SetIsSubsetOf_OfObjects 437 438 +0.2% 1.00x (?)
SetUnion 4552 4563 +0.2% 1.00x (?)
SetUnion_OfObjects 10050 10081 +0.3% 1.00x (?)
SevenBoom 841 838 -0.4% 1.00x
Sim2DArray 417 417 +0.0% 1.00x
SortLargeExistentials 5519 5470 -0.9% 1.01x
SortLettersInPlace 1000 997 -0.3% 1.00x (?)
SortSortedStrings 836 828 -1.0% 1.01x
SortStrings 1767 1745 -1.2% 1.01x
SortStringsUnicode 2568 2507 -2.4% 1.02x
StackPromo 24524 24457 -0.3% 1.00x
StaticArray 10 10 +0.0% 1.00x
StrComplexWalk 1780 1780 +0.0% 1.00x
StrToInt 3142 3231 +2.8% 0.97x
StringAdder 531 556 +4.7% 0.96x
StringBuilder 477 488 +2.3% 0.98x
StringComparison_abnormal 788 778 -1.3% 1.01x
StringComparison_ascii 1022 1012 -1.0% 1.01x
StringComparison_emoji 845 858 +1.5% 0.98x
StringComparison_fastPrenormal 846 833 -1.5% 1.02x
StringComparison_latin1 662 651 -1.7% 1.02x
StringComparison_longSharedPrefix 953 954 +0.1% 1.00x (?)
StringComparison_nonBMPSlowestPrenormal 1670 1684 +0.8% 0.99x
StringComparison_slowerPrenormal 1784 1832 +2.7% 0.97x
StringComparison_zalgo 121710 123502 +1.5% 0.99x
StringEdits 174586 170080 -2.6% 1.03x
StringEnumRawValueInitialization 905 909 +0.4% 1.00x
StringEqualPointerComparison 286 286 +0.0% 1.00x
StringFromLongWholeSubstring 21 21 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 21 21 +0.0% 1.00x
StringHasPrefixAscii 2205 2203 -0.1% 1.00x (?)
StringHasPrefixUnicode 98957 99296 +0.3% 1.00x (?)
StringHasSuffixAscii 2233 2235 +0.1% 1.00x
StringHasSuffixUnicode 101304 100262 -1.0% 1.01x (?)
StringInterpolation 9088 9111 +0.3% 1.00x (?)
StringInterpolationManySmallSegments 18074 18485 +2.3% 0.98x
StringInterpolationSmall 4193 4297 +2.5% 0.98x
StringMatch 12042 12241 +1.7% 0.98x
StringRemoveDupes 481 483 +0.4% 1.00x (?)
StringUTF16Builder 2669 2636 -1.2% 1.01x
StringUTF16SubstringBuilder 5908 5690 -3.7% 1.04x (?)
StringWalk 1554 1554 +0.0% 1.00x
StringWithCString 44830 43003 -4.1% 1.04x
SubstringComparable 13 13 +0.0% 1.00x
SubstringEqualString 628 627 -0.2% 1.00x (?)
SubstringEquatable 1465 1463 -0.1% 1.00x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 74 74 +0.0% 1.00x
SuffixAnyCollection 28 28 +0.0% 1.00x
SuffixAnyCollectionLazy 22050 21504 -2.5% 1.03x (?)
SuffixAnySeqCRangeIter 3622 3589 -0.9% 1.01x
SuffixAnySeqCRangeIterLazy 3623 3589 -0.9% 1.01x
SuffixAnySeqCntRange 17 17 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 17 17 +0.0% 1.00x
SuffixAnySequence 4967 4942 -0.5% 1.01x
SuffixAnySequenceLazy 5082 5035 -0.9% 1.01x
SuffixCountableRange 11 11 +0.0% 1.00x
SuffixCountableRangeLazy 11 11 +0.0% 1.00x
SuffixSequence 3621 3623 +0.1% 1.00x (?)
SuffixSequenceLazy 3624 3604 -0.6% 1.01x (?)
SumUsingReduce 97 97 +0.0% 1.00x
SumUsingReduceInto 97 97 +0.0% 1.00x
SuperChars 20213 20245 +0.2% 1.00x (?)
TwoSum 1473 1483 +0.7% 0.99x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 313 313 +0.0% 1.00x
UTF8Decode_InitDecoding 1350 1354 +0.3% 1.00x
UTF8Decode_InitDecoding_ascii 657 656 -0.2% 1.00x (?)
UTF8Decode_InitFromBytes 1186 1185 -0.1% 1.00x (?)
UTF8Decode_InitFromData 1245 1242 -0.2% 1.00x (?)
UTF8Decode_InitFromData_ascii 770 768 -0.3% 1.00x (?)
Walsh 433 436 +0.7% 0.99x
WordCountHistogramASCII 7903 7916 +0.2% 1.00x (?)
WordCountHistogramUTF16 14335 14999 +4.6% 0.96x
WordCountUniqueASCII 2067 2086 +0.9% 0.99x (?)
WordSplitASCII 7880 7610 -3.4% 1.04x (?)
WordSplitUTF16 10055 9942 -1.1% 1.01x (?)
XorLoop 398 404 +1.5% 0.99x
Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

@airspeedswift airspeedswift changed the title [stdlib][DNM] Factor out unsafe stuff into _Pointer extensions [stdlib] Factor out unsafe pointer stuff into _Pointer extensions Jun 30, 2018
@airspeedswift
Copy link
Member Author

@swift-ci please smoke test compiler performance

@airspeedswift
Copy link
Member Author

@swift-ci please test

@airspeedswift
Copy link
Member Author

@natecook1000 the only issue here is the docs end up getting duplicated. But I'm guessing these docs are pretty settled at this point so hopefully this is ok.

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 3e6f3c327f1eb59975c215c67a9d30277e40264d

@swift-ci
Copy link
Contributor

Build failed
Swift Test Linux Platform
Git Sha - 3e6f3c327f1eb59975c215c67a9d30277e40264d

@airspeedswift
Copy link
Member Author

Huh, I really thought we defaulted successor on Strideable types.

@swift-ci
Copy link
Contributor

Build comment file:

Summary for master smoketest

Unexpected test results, excluded stats for ReactiveCocoa

No regressions above thresholds

Debug

debug brief

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
time.swift-driver.wall 70.3s 69.5s -770.3ms -1.1% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 36,107,922 36,117,370 9,448 0.03%

debug detailed

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Sema.NumLazyIterableDeclContexts 334,494 330,512 -3,982 -1.19% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (22)
name old new delta delta_pct
AST.NumImportedExternalDefinitions 82,895 82,895 0 0.0%
AST.NumLoadedModules 12,485 12,485 0 0.0%
AST.NumTotalClangImportedEntities 253,861 253,861 0 0.0%
AST.NumUsedConformances 8,754 8,753 -1 -0.01%
IRModule.NumIRBasicBlocks 127,834 127,918 84 0.07%
IRModule.NumIRFunctions 76,027 76,079 52 0.07%
IRModule.NumIRGlobals 69,594 69,598 4 0.01%
IRModule.NumIRInsts 1,427,858 1,428,118 260 0.02%
IRModule.NumIRValueSymbols 130,291 130,347 56 0.04%
LLVM.NumLLVMBytesOutput 36,107,922 36,117,370 9,448 0.03%
SILModule.NumSILGenFunctions 44,435 44,435 0 0.0%
SILModule.NumSILOptFunctions 47,477 47,477 0 0.0%
Sema.NumConformancesDeserialized 342,483 343,755 1,272 0.37%
Sema.NumConstraintScopes 895,933 892,793 -3,140 -0.35%
Sema.NumDeclsDeserialized 2,075,723 2,057,163 -18,560 -0.89%
Sema.NumDeclsValidated 189,011 188,814 -197 -0.1%
Sema.NumFunctionsTypechecked 47,175 47,175 0 0.0%
Sema.NumGenericSignatureBuilders 78,441 79,039 598 0.76%
Sema.NumLazyGenericEnvironments 416,104 412,761 -3,343 -0.8%
Sema.NumLazyGenericEnvironmentsLoaded 38,168 38,537 369 0.97%
Sema.NumTypesDeserialized 2,285,731 2,263,074 -22,657 -0.99%
Sema.NumTypesValidated 145,218 145,218 0 0.0%

Release

release brief

Regressed (0)
name old new delta delta_pct
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (2)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 26,786,516 26,785,876 -640 -0.0%
time.swift-driver.wall 139.2s 139.2s 32.3ms 0.02%

release detailed

Regressed (0)
name old new delta delta_pct
Improved (4)
name old new delta delta_pct
Sema.NumDeclsDeserialized 204,812 201,842 -2,970 -1.45% ✅
Sema.NumLazyGenericEnvironments 32,433 31,805 -628 -1.94% ✅
Sema.NumLazyIterableDeclContexts 20,782 20,528 -254 -1.22% ✅
Sema.NumTypesDeserialized 266,909 263,327 -3,582 -1.34% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (19)
name old new delta delta_pct
AST.NumImportedExternalDefinitions 8,857 8,857 0 0.0%
AST.NumLoadedModules 408 408 0 0.0%
AST.NumTotalClangImportedEntities 25,776 25,776 0 0.0%
AST.NumUsedConformances 8,760 8,759 -1 -0.01%
IRModule.NumIRBasicBlocks 147,893 147,895 2 0.0%
IRModule.NumIRFunctions 57,374 57,376 2 0.0%
IRModule.NumIRGlobals 55,388 55,388 0 0.0%
IRModule.NumIRInsts 1,211,274 1,211,128 -146 -0.01%
IRModule.NumIRValueSymbols 103,407 103,409 2 0.0%
LLVM.NumLLVMBytesOutput 26,786,516 26,785,876 -640 -0.0%
SILModule.NumSILGenFunctions 22,234 22,234 0 0.0%
SILModule.NumSILOptFunctions 35,776 35,793 17 0.05%
Sema.NumConformancesDeserialized 84,169 84,857 688 0.82%
Sema.NumConstraintScopes 796,058 792,918 -3,140 -0.39%
Sema.NumDeclsValidated 59,866 59,866 0 0.0%
Sema.NumFunctionsTypechecked 10,716 10,716 0 0.0%
Sema.NumGenericSignatureBuilders 9,602 9,617 15 0.16%
Sema.NumLazyGenericEnvironmentsLoaded 4,601 4,623 22 0.48%
Sema.NumTypesValidated 32,558 32,558 0 0.0%

@swift-ci
Copy link
Contributor

Build comment file:

Optimized (O)

Regression (20)
TEST OLD NEW DELTA SPEEDUP
UTF8Decode_InitFromData_ascii 667 793 +18.9% 0.84x
CharIndexing_japanese_unicodeScalars 19502 22313 +14.4% 0.87x (?)
CharIndexing_utf16_unicodeScalars 23600 26904 +14.0% 0.88x (?)
ObjectiveCBridgeStubFromArrayOfNSString 33126 37529 +13.3% 0.88x
CharIndexing_korean_unicodeScalars 15793 17639 +11.7% 0.90x (?)
ObjectiveCBridgeToNSSet 16711 18604 +11.3% 0.90x (?)
WordCountUniqueUTF16 7388 8116 +9.9% 0.91x
ObjectiveCBridgeFromNSArrayAnyObjectForced 4767 5222 +9.5% 0.91x (?)
PopFrontUnsafePointer 8762 9566 +9.2% 0.92x (?)
SuffixCountableRange 11 12 +9.1% 0.92x
DropLastCountableRange 11 12 +9.1% 0.92x
SuffixCountableRangeLazy 11 12 +9.1% 0.92x
StringBuilder 464 498 +7.3% 0.93x
ObjectiveCBridgeFromNSArrayAnyObjectToString 45200 48414 +7.1% 0.93x
CharIndexing_chinese_unicodeScalars_Backwards 12140 12943 +6.6% 0.94x (?)
ObjectiveCBridgeStubURLAppendPathRef 275765 293449 +6.4% 0.94x
StringBuilderSmallReservingCapacity 478 508 +6.3% 0.94x
CStringLongNonAscii 2361 2509 +6.3% 0.94x
DataReplaceSmallBuffer 8723 9244 +6.0% 0.94x (?)
SumUsingReduce 92 97 +5.4% 0.95x
Improvement (15)
TEST OLD NEW DELTA SPEEDUP
DataAppendDataSmallToLarge 49782 37943 -23.8% 1.31x (?)
UTF8Decode_InitFromBytes 1379 1179 -14.5% 1.17x
CharIndexing_ascii_unicodeScalars 18610 16278 -12.5% 1.14x
StringBuilderWithLongSubstring 1625 1434 -11.8% 1.13x (?)
CharIndexing_russian_unicodeScalars 15312 13563 -11.4% 1.13x
NSDictionaryCastToSwift 7590 6730 -11.3% 1.13x (?)
Sim2DArray 669 599 -10.5% 1.12x
DataAppendDataSmallToSmall 6296 5673 -9.9% 1.11x (?)
DataReplaceMediumBuffer 12359 11309 -8.5% 1.09x
DropLastCountableRangeLazy 12 11 -8.3% 1.09x
ObjectiveCBridgeToNSDictionary 28335 26355 -7.0% 1.08x
DataAppendDataMediumToMedium 6974 6493 -6.9% 1.07x (?)
DataReplaceLarge 38775 36546 -5.7% 1.06x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 75708 71477 -5.6% 1.06x (?)
CharIndexing_utf16_unicodeScalars_Backwards 24586 23275 -5.3% 1.06x (?)
No Changes (411)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 3627 3636 +0.2% 1.00x (?)
AnyHashableWithAClass 90945 90894 -0.1% 1.00x (?)
Array2D 2853 2854 +0.0% 1.00x (?)
ArrayAppend 1068 1070 +0.2% 1.00x (?)
ArrayAppendArrayOfInt 800 798 -0.2% 1.00x (?)
ArrayAppendAscii 3850 3906 +1.5% 0.99x
ArrayAppendAsciiSubstring 24882 25137 +1.0% 0.99x
ArrayAppendFromGeneric 800 798 -0.2% 1.00x (?)
ArrayAppendGenericStructs 1432 1429 -0.2% 1.00x (?)
ArrayAppendLatin1 41719 41584 -0.3% 1.00x
ArrayAppendLatin1Substring 142136 142027 -0.1% 1.00x
ArrayAppendLazyMap 1345 1343 -0.1% 1.00x (?)
ArrayAppendOptionals 1433 1417 -1.1% 1.01x (?)
ArrayAppendRepeatCol 1351 1333 -1.3% 1.01x
ArrayAppendReserved 798 801 +0.4% 1.00x
ArrayAppendSequence 1122 1122 +0.0% 1.00x
ArrayAppendStrings 6217 6223 +0.1% 1.00x (?)
ArrayAppendToFromGeneric 803 802 -0.1% 1.00x (?)
ArrayAppendToGeneric 796 798 +0.3% 1.00x (?)
ArrayAppendUTF16 41917 41422 -1.2% 1.01x (?)
ArrayAppendUTF16Substring 140674 140790 +0.1% 1.00x (?)
ArrayInClass 86 85 -1.2% 1.01x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD2 151 152 +0.7% 0.99x
ArrayOfGenericRef 4392 4401 +0.2% 1.00x (?)
ArrayOfPOD 184 185 +0.5% 0.99x
ArrayOfRef 4362 4383 +0.5% 1.00x (?)
ArrayPlusEqualArrayOfInt 799 797 -0.3% 1.00x (?)
ArrayPlusEqualFiveElementCollection 5511 5489 -0.4% 1.00x (?)
ArrayPlusEqualSingleElementCollection 1066 1068 +0.2% 1.00x (?)
ArrayPlusEqualThreeElements 1656 1663 +0.4% 1.00x (?)
ArraySubscript 1517 1525 +0.5% 0.99x (?)
ArrayValueProp 8 8 +0.0% 1.00x
ArrayValueProp2 8 8 +0.0% 1.00x
ArrayValueProp3 8 8 +0.0% 1.00x
ArrayValueProp4 8 8 +0.0% 1.00x
BinaryFloatingPointPropertiesBinade 31 31 +0.0% 1.00x
BinaryFloatingPointPropertiesNextUp 28 28 +0.0% 1.00x
BinaryFloatingPointPropertiesUlp 37 37 +0.0% 1.00x
BitCount 211 211 +0.0% 1.00x
ByteSwap 101 101 +0.0% 1.00x
COWArrayGuaranteedParameterOverhead 8734 9159 +4.9% 0.95x (?)
COWTree 3659 3675 +0.4% 1.00x (?)
CSVParsing 801685 802443 +0.1% 1.00x
CSVParsingAlt 818178 819880 +0.2% 1.00x (?)
CSVParsingAltIndices 342702 341868 -0.2% 1.00x (?)
CStringLongAscii 4191 4206 +0.4% 1.00x
CStringShortAscii 3336 3354 +0.5% 0.99x
Calculator 204 204 +0.0% 1.00x
CaptureProp 4109 4088 -0.5% 1.01x
ChainedFilterMap 1246 1249 +0.2% 1.00x
CharIndexing_ascii_unicodeScalars_Backwards 16663 16033 -3.8% 1.04x (?)
CharIndexing_chinese_unicodeScalars 13190 13428 +1.8% 0.98x (?)
CharIndexing_japanese_unicodeScalars_Backwards 19191 19423 +1.2% 0.99x (?)
CharIndexing_korean_unicodeScalars_Backwards 16205 15537 -4.1% 1.04x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 2960 2952 -0.3% 1.00x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2918 2916 -0.1% 1.00x
CharIndexing_punctuated_unicodeScalars 3828 3784 -1.1% 1.01x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 3650 3639 -0.3% 1.00x (?)
CharIndexing_russian_unicodeScalars_Backwards 13553 14259 +5.2% 0.95x (?)
CharIndexing_tweet_unicodeScalars 32095 32762 +2.1% 0.98x (?)
CharIndexing_tweet_unicodeScalars_Backwards 32320 31623 -2.2% 1.02x (?)
CharIteration_ascii_unicodeScalars 20798 20614 -0.9% 1.01x
CharIteration_ascii_unicodeScalars_Backwards 15115 15102 -0.1% 1.00x (?)
CharIteration_chinese_unicodeScalars 15712 15602 -0.7% 1.01x
CharIteration_chinese_unicodeScalars_Backwards 11436 11437 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars 24854 24690 -0.7% 1.01x
CharIteration_japanese_unicodeScalars_Backwards 18074 18079 +0.0% 1.00x (?)
CharIteration_korean_unicodeScalars 20130 20012 -0.6% 1.01x (?)
CharIteration_korean_unicodeScalars_Backwards 14647 14655 +0.1% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars 3709 3684 -0.7% 1.01x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2736 2732 -0.1% 1.00x
CharIteration_punctuated_unicodeScalars 4658 4632 -0.6% 1.01x
CharIteration_punctuated_unicodeScalars_Backwards 3422 3420 -0.1% 1.00x
CharIteration_russian_unicodeScalars 17297 17172 -0.7% 1.01x
CharIteration_russian_unicodeScalars_Backwards 12593 12588 -0.0% 1.00x
CharIteration_tweet_unicodeScalars 40299 41014 +1.8% 0.98x
CharIteration_tweet_unicodeScalars_Backwards 29855 29831 -0.1% 1.00x
CharIteration_utf16_unicodeScalars 27622 27770 +0.5% 0.99x
CharIteration_utf16_unicodeScalars_Backwards 18574 18546 -0.2% 1.00x
CharacterLiteralsLarge 5744 5807 +1.1% 0.99x
CharacterLiteralsSmall 220 220 +0.0% 1.00x
CharacterPropertiesFetch 4624 4586 -0.8% 1.01x (?)
CharacterPropertiesPrecomputed 1007 1001 -0.6% 1.01x (?)
CharacterPropertiesStashed 1494 1511 +1.1% 0.99x (?)
CharacterPropertiesStashedMemo 1555 1549 -0.4% 1.00x (?)
Chars 1022 1022 +0.0% 1.00x
ClassArrayGetter 15 15 +0.0% 1.00x
Combos 490 489 -0.2% 1.00x (?)
DataAccessBytes 1143 1143 +0.0% 1.00x
DataAppendArray 5319 5273 -0.9% 1.01x (?)
DataAppendBytes 5008 4971 -0.7% 1.01x (?)
DataAppendDataLargeToLarge 67846 68353 +0.7% 0.99x (?)
DataAppendDataLargeToMedium 35732 35315 -1.2% 1.01x (?)
DataAppendDataLargeToSmall 34909 34645 -0.8% 1.01x (?)
DataAppendDataMediumToLarge 38482 38507 +0.1% 1.00x (?)
DataAppendDataMediumToSmall 6183 5931 -4.1% 1.04x (?)
DataAppendDataSmallToMedium 6173 5978 -3.2% 1.03x (?)
DataAppendSequence 21267 21225 -0.2% 1.00x (?)
DataCopyBytes 467 454 -2.8% 1.03x
DataCount 34 34 +0.0% 1.00x
DataMutateBytes 3933 3841 -2.3% 1.02x (?)
DataReplaceLargeBuffer 57962 57439 -0.9% 1.01x (?)
DataReplaceMedium 7829 7674 -2.0% 1.02x (?)
DataReplaceSmall 5669 5574 -1.7% 1.02x (?)
DataReset 2852 2826 -0.9% 1.01x (?)
DataSetCount 570 565 -0.9% 1.01x (?)
DataSubscript 220 220 +0.0% 1.00x
DictOfArraysToArrayOfDicts 797 788 -1.1% 1.01x (?)
Dictionary 521 507 -2.7% 1.03x
Dictionary2 648 635 -2.0% 1.02x
Dictionary2OfObjects 2087 2079 -0.4% 1.00x
Dictionary3 225 226 +0.4% 1.00x
Dictionary3OfObjects 736 744 +1.1% 0.99x (?)
Dictionary4 316 322 +1.9% 0.98x
Dictionary4Legacy 740 716 -3.2% 1.03x
Dictionary4OfObjects 437 444 +1.6% 0.98x
Dictionary4OfObjectsLegacy 906 936 +3.3% 0.97x
DictionaryBridge 1246 1238 -0.6% 1.01x (?)
DictionaryCopy 107393 106579 -0.8% 1.01x
DictionaryFilter 106735 106209 -0.5% 1.00x
DictionaryGroup 216 215 -0.5% 1.00x
DictionaryGroupOfObjects 2123 2131 +0.4% 1.00x (?)
DictionaryKeysContainsCocoa 43 41 -4.7% 1.05x (?)
DictionaryKeysContainsNative 32 32 +0.0% 1.00x
DictionaryLiteral 1911 1907 -0.2% 1.00x (?)
DictionaryOfObjects 2385 2400 +0.6% 0.99x (?)
DictionaryRemove 4184 4190 +0.1% 1.00x (?)
DictionaryRemoveOfObjects 25854 25928 +0.3% 1.00x (?)
DictionarySubscriptDefaultMutation 267 268 +0.4% 1.00x
DictionarySubscriptDefaultMutationArray 605 604 -0.2% 1.00x (?)
DictionarySubscriptDefaultMutationArrayOfObjects 4031 4034 +0.1% 1.00x (?)
DictionarySubscriptDefaultMutationOfObjects 1711 1705 -0.4% 1.00x (?)
DictionarySwap 1032 1032 +0.0% 1.00x
DictionarySwapAt 6740 6766 +0.4% 1.00x (?)
DictionarySwapAtOfObjects 52529 52641 +0.2% 1.00x (?)
DictionarySwapOfObjects 8837 8886 +0.6% 0.99x (?)
DoubleWidthDivision 0 0 +0.0% 1.00x
DropFirstAnyCollection 76 76 +0.0% 1.00x
DropFirstAnyCollectionLazy 65391 65026 -0.6% 1.01x (?)
DropFirstAnySeqCRangeIter 93 93 +0.0% 1.00x
DropFirstAnySeqCRangeIterLazy 93 93 +0.0% 1.00x
DropFirstAnySeqCntRange 71 71 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 71 71 +0.0% 1.00x
DropFirstAnySequence 1844 1844 +0.0% 1.00x
DropFirstAnySequenceLazy 1842 1843 +0.1% 1.00x (?)
DropFirstArray 35 35 +0.0% 1.00x
DropFirstArrayLazy 35 35 +0.0% 1.00x
DropFirstCountableRange 35 35 +0.0% 1.00x
DropFirstCountableRangeLazy 35 35 +0.0% 1.00x
DropFirstSequence 2683 2683 +0.0% 1.00x
DropFirstSequenceLazy 2773 2774 +0.0% 1.00x (?)
DropLastAnyCollection 28 28 +0.0% 1.00x
DropLastAnyCollectionLazy 21759 21765 +0.0% 1.00x (?)
DropLastAnySeqCRangeIter 3341 3293 -1.4% 1.01x
DropLastAnySeqCRangeIterLazy 3330 3295 -1.1% 1.01x
DropLastAnySeqCntRange 11 11 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 11 11 +0.0% 1.00x
DropLastAnySequence 4955 4991 +0.7% 0.99x
DropLastAnySequenceLazy 5042 5084 +0.8% 0.99x
DropLastSequence 687 689 +0.3% 1.00x
DropLastSequenceLazy 688 688 +0.0% 1.00x
DropWhileAnyCollection 100 100 +0.0% 1.00x
DropWhileAnyCollectionLazy 130 130 +0.0% 1.00x
DropWhileAnySeqCRangeIter 75 76 +1.3% 0.99x
DropWhileAnySeqCRangeIterLazy 130 130 +0.0% 1.00x
DropWhileAnySeqCntRange 95 95 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 130 130 +0.0% 1.00x
DropWhileAnySequence 1860 1860 +0.0% 1.00x
DropWhileAnySequenceLazy 1856 1854 -0.1% 1.00x (?)
DropWhileArrayLazy 88 88 +0.0% 1.00x
DropWhileCountableRange 36 36 +0.0% 1.00x
DropWhileCountableRangeLazy 105 105 +0.0% 1.00x
DropWhileSequence 2221 2205 -0.7% 1.01x
DropWhileSequenceLazy 88 88 +0.0% 1.00x
EqualStringSubstring 50 50 +0.0% 1.00x
EqualSubstringString 50 50 +0.0% 1.00x
EqualSubstringSubstring 50 49 -2.0% 1.02x
EqualSubstringSubstringGenericEquatable 50 49 -2.0% 1.02x
ErrorHandling 1200 1218 +1.5% 0.99x (?)
ExclusivityGlobal 5 5 +0.0% 1.00x
ExclusivityIndependent 2 2 +0.0% 1.00x
FatCompactMap 202612 202730 +0.1% 1.00x (?)
FilterEvenUsingReduce 1300 1319 +1.5% 0.99x
FilterEvenUsingReduceInto 150 147 -2.0% 1.02x
FloatingPointPrinting_Double_description_small 21435 21711 +1.3% 0.99x (?)
FloatingPointPrinting_Double_description_uniform 21034 21109 +0.4% 1.00x (?)
FloatingPointPrinting_Double_interpolated 62886 62654 -0.4% 1.00x (?)
FloatingPointPrinting_Float80_description_small 28455 28583 +0.4% 1.00x (?)
FloatingPointPrinting_Float80_description_uniform 27591 27531 -0.2% 1.00x (?)
FloatingPointPrinting_Float80_interpolated 65741 65975 +0.4% 1.00x (?)
FloatingPointPrinting_Float_description_small 5512 5618 +1.9% 0.98x (?)
FloatingPointPrinting_Float_description_uniform 5424 5520 +1.8% 0.98x
FloatingPointPrinting_Float_interpolated 39243 38938 -0.8% 1.01x (?)
FrequenciesUsingReduce 5175 4984 -3.7% 1.04x
FrequenciesUsingReduceInto 1506 1513 +0.5% 1.00x (?)
Hanoi 2143 2143 +0.0% 1.00x
HashTest 947 958 +1.2% 0.99x (?)
Histogram 658 652 -0.9% 1.01x
Integrate 354 354 +0.0% 1.00x
IterateData 1545 1580 +2.3% 0.98x
Join 168 167 -0.6% 1.01x
LazilyFilteredArrayContains 38644 38676 +0.1% 1.00x (?)
LazilyFilteredArrays 65333 65574 +0.4% 1.00x (?)
LazilyFilteredRange 3877 3874 -0.1% 1.00x (?)
LessSubstringSubstring 50 50 +0.0% 1.00x
LessSubstringSubstringGenericComparable 50 50 +0.0% 1.00x
LinkedList 7546 7593 +0.6% 0.99x
LuhnAlgoEager 454 447 -1.5% 1.02x
LuhnAlgoLazy 444 448 +0.9% 0.99x (?)
MapReduce 428 427 -0.2% 1.00x
MapReduceAnyCollection 427 427 +0.0% 1.00x
MapReduceAnyCollectionShort 2066 2109 +2.1% 0.98x (?)
MapReduceClass 3010 3005 -0.2% 1.00x (?)
MapReduceClassShort 4558 4566 +0.2% 1.00x
MapReduceLazyCollection 13 13 +0.0% 1.00x
MapReduceLazyCollectionShort 34 34 +0.0% 1.00x
MapReduceLazySequence 86 86 +0.0% 1.00x
MapReduceSequence 450 457 +1.6% 0.98x
MapReduceShort 2030 2066 +1.8% 0.98x
MapReduceShortString 21 21 +0.0% 1.00x
MapReduceString 50 50 +0.0% 1.00x
Memset 214 224 +4.7% 0.96x (?)
MonteCarloE 10312 10311 -0.0% 1.00x (?)
MonteCarloPi 42663 42685 +0.1% 1.00x (?)
NSError 165 165 +0.0% 1.00x
NSStringConversion 737 732 -0.7% 1.01x (?)
NibbleSort 3668 3667 -0.0% 1.00x (?)
NopDeinit 32289 32261 -0.1% 1.00x (?)
ObjectAllocation 134 133 -0.7% 1.01x
ObjectiveCBridgeFromNSArrayAnyObject 25586 26047 +1.8% 0.98x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 47009 45566 -3.1% 1.03x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 113477 115816 +2.1% 0.98x (?)
ObjectiveCBridgeFromNSSetAnyObject 51708 49970 -3.4% 1.03x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4930 5070 +2.8% 0.97x (?)
ObjectiveCBridgeFromNSString 1221 1255 +2.8% 0.97x (?)
ObjectiveCBridgeFromNSStringForced 2723 2707 -0.6% 1.01x (?)
ObjectiveCBridgeStubDataAppend 6317 6338 +0.3% 1.00x (?)
ObjectiveCBridgeStubDateMutation 401 401 +0.0% 1.00x
ObjectiveCBridgeStubFromNSDate 6242 6224 -0.3% 1.00x (?)
ObjectiveCBridgeStubFromNSString 1018 1025 +0.7% 0.99x
ObjectiveCBridgeStubFromNSStringRef 155 155 +0.0% 1.00x
ObjectiveCBridgeStubNSDataAppend 2559 2663 +4.1% 0.96x (?)
ObjectiveCBridgeStubNSDateMutationRef 13410 13176 -1.7% 1.02x (?)
ObjectiveCBridgeStubToArrayOfNSString 39180 38963 -0.6% 1.01x (?)
ObjectiveCBridgeStubToNSDate 15003 15572 +3.8% 0.96x (?)
ObjectiveCBridgeStubToNSDateRef 3470 3470 +0.0% 1.00x
ObjectiveCBridgeStubToNSString 2346 2342 -0.2% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 112 113 +0.9% 0.99x (?)
ObjectiveCBridgeStubURLAppendPath 290262 279089 -3.8% 1.04x (?)
ObjectiveCBridgeToNSArray 14274 14453 +1.3% 0.99x (?)
ObjectiveCBridgeToNSString 452 455 +0.7% 0.99x
ObserverClosure 2166 2164 -0.1% 1.00x (?)
ObserverForwarderStruct 1212 1214 +0.2% 1.00x (?)
ObserverPartiallyAppliedMethod 3764 3714 -1.3% 1.01x
ObserverUnappliedMethod 2458 2460 +0.1% 1.00x (?)
OpaqueConsumingUsers 4180 4179 -0.0% 1.00x
OpenClose 63 63 +0.0% 1.00x
PartialApplyDynamicType 0 0 +0.0% 1.00x
Phonebook 6654 6611 -0.6% 1.01x
PointerArithmetics 31500 31494 -0.0% 1.00x (?)
PolymorphicCalls 25 25 +0.0% 1.00x
PopFrontArray 1977 1988 +0.6% 0.99x (?)
PopFrontArrayGeneric 2010 1985 -1.2% 1.01x (?)
PrefixAnyCollection 76 76 +0.0% 1.00x
PrefixAnyCollectionLazy 65122 65189 +0.1% 1.00x (?)
PrefixAnySeqCRangeIter 40 40 +0.0% 1.00x
PrefixAnySeqCRangeIterLazy 40 40 +0.0% 1.00x
PrefixAnySeqCntRange 71 71 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 71 71 +0.0% 1.00x
PrefixAnySequence 1378 1378 +0.0% 1.00x
PrefixAnySequenceLazy 1378 1379 +0.1% 1.00x
PrefixArray 35 35 +0.0% 1.00x
PrefixArrayLazy 35 35 +0.0% 1.00x
PrefixCountableRange 35 35 +0.0% 1.00x
PrefixCountableRangeLazy 35 35 +0.0% 1.00x
PrefixSequence 2223 2221 -0.1% 1.00x (?)
PrefixSequenceLazy 2278 2277 -0.0% 1.00x
PrefixWhileAnyCollection 147 147 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 71 71 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 398 396 -0.5% 1.01x (?)
PrefixWhileAnySeqCRangeIterLazy 89 89 +0.0% 1.00x
PrefixWhileAnySeqCntRange 142 142 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 71 71 +0.0% 1.00x
PrefixWhileAnySequence 1535 1535 +0.0% 1.00x
PrefixWhileAnySequenceLazy 1392 1392 +0.0% 1.00x
PrefixWhileArray 88 88 +0.0% 1.00x
PrefixWhileArrayLazy 70 70 +0.0% 1.00x
PrefixWhileCountableRange 36 36 +0.0% 1.00x
PrefixWhileCountableRangeLazy 35 35 +0.0% 1.00x
PrefixWhileSequence 375 373 -0.5% 1.01x (?)
PrefixWhileSequenceLazy 52 52 +0.0% 1.00x
Prims 907 904 -0.3% 1.00x (?)
PrimsSplit 901 901 +0.0% 1.00x
QueueConcrete 1150 1148 -0.2% 1.00x (?)
QueueGeneric 1149 1143 -0.5% 1.01x
RC4 160 161 +0.6% 0.99x
RGBHistogram 2988 3005 +0.6% 0.99x (?)
RGBHistogramOfObjects 23693 23672 -0.1% 1.00x (?)
Radix2CooleyTukey 12434 12453 +0.2% 1.00x (?)
Radix2CooleyTukeyf 8914 8930 +0.2% 1.00x (?)
RandomDoubleDef 26878 26738 -0.5% 1.01x
RandomDoubleLCG 2907 2927 +0.7% 0.99x
RandomIntegersDef 24487 24462 -0.1% 1.00x (?)
RandomIntegersLCG 994 994 +0.0% 1.00x
RandomShuffleDef 810517 810615 +0.0% 1.00x (?)
RandomShuffleLCG 120140 120920 +0.6% 0.99x (?)
RangeAssignment 366 365 -0.3% 1.00x (?)
RangeIterationSigned 171 171 +0.0% 1.00x
RangeReplaceableCollectionPlusDefault 1021 1003 -1.8% 1.02x
RecursiveOwnedParameter 115 115 +0.0% 1.00x
RemoveWhereFilterInts 49 49 +0.0% 1.00x
RemoveWhereFilterString 248 250 +0.8% 0.99x
RemoveWhereFilterStrings 437 438 +0.2% 1.00x
RemoveWhereMoveInts 15 15 +0.0% 1.00x
RemoveWhereMoveStrings 708 709 +0.1% 1.00x
RemoveWhereQuadraticInts 1296 1297 +0.1% 1.00x (?)
RemoveWhereQuadraticString 378 371 -1.9% 1.02x (?)
RemoveWhereQuadraticStrings 2766 2765 -0.0% 1.00x
RemoveWhereSwapInts 19 19 +0.0% 1.00x
RemoveWhereSwapStrings 861 861 +0.0% 1.00x
ReversedArray 57 57 +0.0% 1.00x
ReversedBidirectional 16600 16931 +2.0% 0.98x
ReversedDictionary 263 267 +1.5% 0.99x (?)
RomanNumbers 84365 82014 -2.8% 1.03x
SequenceAlgosAnySequence 12097 12225 +1.1% 0.99x
SequenceAlgosArray 1578 1578 +0.0% 1.00x
SequenceAlgosContiguousArray 1578 1577 -0.1% 1.00x (?)
SequenceAlgosList 1356 1349 -0.5% 1.01x (?)
SequenceAlgosRange 2576 2577 +0.0% 1.00x (?)
SequenceAlgosUnfoldSequence 1102 1102 +0.0% 1.00x
SetExclusiveOr 5045 5109 +1.3% 0.99x
SetExclusiveOr_OfObjects 11602 11628 +0.2% 1.00x (?)
SetIntersect 685 694 +1.3% 0.99x
SetIntersect_OfObjects 1656 1663 +0.4% 1.00x (?)
SetIsSubsetOf 361 362 +0.3% 1.00x
SetIsSubsetOf_OfObjects 480 469 -2.3% 1.02x
SetUnion 4473 4462 -0.2% 1.00x
SetUnion_OfObjects 10080 10068 -0.1% 1.00x (?)
SevenBoom 836 847 +1.3% 0.99x (?)
SortLargeExistentials 5567 5610 +0.8% 0.99x
SortLettersInPlace 991 992 +0.1% 1.00x (?)
SortSortedStrings 856 855 -0.1% 1.00x
SortStrings 1757 1759 +0.1% 1.00x
SortStringsUnicode 2571 2582 +0.4% 1.00x
StackPromo 24897 24916 +0.1% 1.00x (?)
StaticArray 9 9 +0.0% 1.00x
StrComplexWalk 1775 1776 +0.1% 1.00x (?)
StrToInt 3151 3148 -0.1% 1.00x (?)
StringAdder 552 548 -0.7% 1.01x (?)
StringBuilderLong 1314 1317 +0.2% 1.00x (?)
StringComparison_abnormal 768 775 +0.9% 0.99x (?)
StringComparison_ascii 999 999 +0.0% 1.00x
StringComparison_emoji 864 840 -2.8% 1.03x
StringComparison_fastPrenormal 848 871 +2.7% 0.97x
StringComparison_latin1 659 662 +0.5% 1.00x
StringComparison_longSharedPrefix 955 954 -0.1% 1.00x
StringComparison_nonBMPSlowestPrenormal 1684 1668 -1.0% 1.01x
StringComparison_slowerPrenormal 1830 1802 -1.5% 1.02x
StringComparison_zalgo 120725 122909 +1.8% 0.98x
StringEdits 169639 169393 -0.1% 1.00x (?)
StringEnumRawValueInitialization 908 896 -1.3% 1.01x
StringEqualPointerComparison 286 286 +0.0% 1.00x
StringFromLongWholeSubstring 21 21 +0.0% 1.00x
StringFromLongWholeSubstringGeneric 21 21 +0.0% 1.00x
StringHasPrefixAscii 2206 2205 -0.0% 1.00x (?)
StringHasPrefixUnicode 101363 101083 -0.3% 1.00x (?)
StringHasSuffixAscii 2233 2291 +2.6% 0.97x
StringHasSuffixUnicode 101157 100494 -0.7% 1.01x (?)
StringInterpolation 9175 9221 +0.5% 1.00x (?)
StringInterpolationManySmallSegments 18393 18447 +0.3% 1.00x (?)
StringInterpolationSmall 4258 4227 -0.7% 1.01x
StringMatch 12356 12096 -2.1% 1.02x
StringRemoveDupes 476 483 +1.5% 0.99x
StringUTF16Builder 2666 2717 +1.9% 0.98x (?)
StringUTF16SubstringBuilder 5806 5858 +0.9% 0.99x (?)
StringWalk 1554 1549 -0.3% 1.00x
StringWithCString 44935 44854 -0.2% 1.00x
StringWordBuilder 2362 2314 -2.0% 1.02x
StringWordBuilderReservingCapacity 1948 2012 +3.3% 0.97x
SubstringComparable 14 14 +0.0% 1.00x
SubstringEqualString 639 645 +0.9% 0.99x (?)
SubstringEquatable 1482 1489 +0.5% 1.00x
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 74 74 +0.0% 1.00x
SuffixAnyCollection 28 28 +0.0% 1.00x
SuffixAnyCollectionLazy 21778 21934 +0.7% 0.99x (?)
SuffixAnySeqCRangeIter 3644 3597 -1.3% 1.01x
SuffixAnySeqCRangeIterLazy 3653 3597 -1.5% 1.02x
SuffixAnySeqCntRange 17 17 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 17 17 +0.0% 1.00x
SuffixAnySequence 4923 4945 +0.4% 1.00x
SuffixAnySequenceLazy 5037 5055 +0.4% 1.00x
SuffixSequence 3652 3661 +0.2% 1.00x (?)
SuffixSequenceLazy 3658 3655 -0.1% 1.00x (?)
SumUsingReduceInto 97 97 +0.0% 1.00x
SuperChars 20280 20219 -0.3% 1.00x (?)
TwoSum 1473 1478 +0.3% 1.00x (?)
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 298 298 +0.0% 1.00x
UTF8Decode_InitDecoding 1361 1358 -0.2% 1.00x
UTF8Decode_InitDecoding_ascii 682 652 -4.4% 1.05x (?)
UTF8Decode_InitFromBytes_ascii 495 504 +1.8% 0.98x (?)
UTF8Decode_InitFromData 1239 1240 +0.1% 1.00x (?)
Walsh 445 445 +0.0% 1.00x
WordCountHistogramASCII 8036 7932 -1.3% 1.01x
WordCountHistogramUTF16 14411 14649 +1.7% 0.98x
WordCountUniqueASCII 2095 2110 +0.7% 0.99x (?)
WordSplitASCII 9499 9075 -4.5% 1.05x (?)
WordSplitUTF16 11619 11116 -4.3% 1.05x (?)
XorLoop 403 402 -0.2% 1.00x (?)
Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

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.

2 participants