Skip to content

[benchmark] Using tags for benchmarks #12242

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 6 commits into from
Oct 4, 2017

Conversation

moiseev
Copy link
Contributor

@moiseev moiseev commented Oct 3, 2017

Introducing the skip-tags and moving all the benchmarks to using tags to decide which tests to run instead of manually splitting them into separate categories.

Max Moiseev added 4 commits October 2, 2017 17:10
The idea being, we need to decide what benchmarks to run solely based on
tags.

`--tag` allows to list all tags that are required;
`--skip-tags` allows to skip benchmarks that have any of those tags.

By default, skip-tags list contains .unstable and .String, which results
in the same subset of benchmarks as before.
@moiseev
Copy link
Contributor Author

moiseev commented Oct 3, 2017

@swift-ci Please smoke test

@moiseev
Copy link
Contributor Author

moiseev commented Oct 3, 2017

@swift-ci Please smoke benchmark

Copy link

@shajrawi shajrawi left a comment

Choose a reason for hiding this comment

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

I am not sure we want the new registerBenchmark addition. Other than that LGTM! I love the addition of skip-tags / getting rid of run-all

_ tags: [BenchmarkCategory]
) {
registerBenchmark(
BenchmarkInfo(name: name, runFunction: function, tags: tags))
Copy link

Choose a reason for hiding this comment

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

@atrick 's point with BenchmarkInfo is to slowly deprecate the 'main' file / migrate towards having the tags inside the benchmark's source file. replacing addTo with this runs counter to that.

Copy link
Contributor

Choose a reason for hiding this comment

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

I think this change is fine. I just need to provide new instructions to the one person who was using --registered.

@swift-ci
Copy link
Contributor

swift-ci commented Oct 3, 2017

Build comment file:

Optimized (O)

Regression (3)
TEST OLD NEW DELTA SPEEDUP
PopFrontUnsafePointer 5117 6104 +19.3% 0.84x
PopFrontArray 1089 1292 +18.6% 0.84x
PopFrontArrayGeneric 1091 1291 +18.3% 0.85x
Improvement (6)
TEST OLD NEW DELTA SPEEDUP
StringWithCString 65829 60007 -8.8% 1.10x
ArrayAppendLatin1 44464 41629 -6.4% 1.07x
Calculator 33 31 -6.1% 1.06x
ObjectiveCBridgeStubNSDateMutationRef 12730 11991 -5.8% 1.06x (?)
PrefixCountableRange 19 18 -5.3% 1.06x
ObjectiveCBridgeFromNSDictionaryAnyObjectForced 5513 5225 -5.2% 1.06x
No Changes (320)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 2987 2953 -1.1% 1.01x
AnyHashableWithAClass 68076 67311 -1.1% 1.01x
Array2D 1978 1977 -0.1% 1.00x (?)
ArrayAppend 1078 1080 +0.2% 1.00x (?)
ArrayAppendArrayOfInt 597 596 -0.2% 1.00x
ArrayAppendAscii 20448 20132 -1.5% 1.02x (?)
ArrayAppendFromGeneric 597 597 +0.0% 1.00x
ArrayAppendGenericStructs 1228 1239 +0.9% 0.99x (?)
ArrayAppendLazyMap 989 987 -0.2% 1.00x (?)
ArrayAppendOptionals 1264 1240 -1.9% 1.02x (?)
ArrayAppendRepeatCol 999 999 +0.0% 1.00x
ArrayAppendReserved 844 841 -0.4% 1.00x
ArrayAppendSequence 913 913 +0.0% 1.00x
ArrayAppendStrings 15068 15076 +0.1% 1.00x (?)
ArrayAppendToFromGeneric 597 597 +0.0% 1.00x
ArrayAppendToGeneric 597 597 +0.0% 1.00x
ArrayAppendUTF16 40587 41624 +2.6% 0.98x (?)
ArrayInClass 61 61 +0.0% 1.00x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD 230 230 +0.0% 1.00x
ArrayOfGenericRef 3972 3971 -0.0% 1.00x (?)
ArrayOfPOD 176 176 +0.0% 1.00x
ArrayOfRef 3925 3910 -0.4% 1.00x (?)
ArrayPlusEqualArrayOfInt 597 597 +0.0% 1.00x
ArrayPlusEqualFiveElementCollection 4790 4797 +0.1% 1.00x (?)
ArrayPlusEqualSingleElementCollection 1079 1079 +0.0% 1.00x
ArrayPlusEqualThreeElements 1627 1637 +0.6% 0.99x
ArraySubscript 1490 1492 +0.1% 1.00x (?)
ArrayValueProp 6 6 +0.0% 1.00x
ArrayValueProp2 6 6 +0.0% 1.00x
ArrayValueProp3 6 6 +0.0% 1.00x
ArrayValueProp4 6 6 +0.0% 1.00x
BitCount 134 134 +0.0% 1.00x
ByteSwap 115 115 +0.0% 1.00x
CStringLongAscii 4877 4706 -3.5% 1.04x
CStringLongNonAscii 2197 2197 +0.0% 1.00x
CStringShortAscii 4787 4799 +0.3% 1.00x (?)
CaptureProp 3958 4120 +4.1% 0.96x
CharIndexing_ascii_unicodeScalars 13827 13832 +0.0% 1.00x
CharIndexing_ascii_unicodeScalars_Backwards 11252 11260 +0.1% 1.00x
CharIndexing_chinese_unicodeScalars 10486 10488 +0.0% 1.00x (?)
CharIndexing_chinese_unicodeScalars_Backwards 8531 8541 +0.1% 1.00x
CharIndexing_japanese_unicodeScalars 16543 16551 +0.0% 1.00x
CharIndexing_japanese_unicodeScalars_Backwards 13459 13468 +0.1% 1.00x (?)
CharIndexing_korean_unicodeScalars 13401 13411 +0.1% 1.00x (?)
CharIndexing_korean_unicodeScalars_Backwards 10915 10918 +0.0% 1.00x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 2530 2539 +0.4% 1.00x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2081 2095 +0.7% 0.99x
CharIndexing_punctuated_unicodeScalars 3160 3168 +0.3% 1.00x
CharIndexing_punctuated_unicodeScalars_Backwards 2587 2603 +0.6% 0.99x
CharIndexing_russian_unicodeScalars 11521 11532 +0.1% 1.00x
CharIndexing_russian_unicodeScalars_Backwards 9389 9394 +0.1% 1.00x
CharIndexing_tweet_unicodeScalars 27225 27236 +0.0% 1.00x (?)
CharIndexing_tweet_unicodeScalars_Backwards 22206 22209 +0.0% 1.00x (?)
CharIndexing_utf16_unicodeScalars 81421 81395 -0.0% 1.00x
CharIndexing_utf16_unicodeScalars_Backwards 74846 75338 +0.7% 0.99x
CharIteration_ascii_unicodeScalars 15643 15829 +1.2% 0.99x
CharIteration_ascii_unicodeScalars_Backwards 16173 16175 +0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars 11847 11999 +1.3% 0.99x
CharIteration_chinese_unicodeScalars_Backwards 12244 12248 +0.0% 1.00x (?)
CharIteration_japanese_unicodeScalars 18712 18948 +1.3% 0.99x
CharIteration_japanese_unicodeScalars_Backwards 19369 19367 -0.0% 1.00x (?)
CharIteration_korean_unicodeScalars 15170 15349 +1.2% 0.99x
CharIteration_korean_unicodeScalars_Backwards 15686 15685 -0.0% 1.00x (?)
CharIteration_punctuatedJapanese_unicodeScalars 2858 2892 +1.2% 0.99x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2916 2918 +0.1% 1.00x
CharIteration_punctuated_unicodeScalars 3571 3609 +1.1% 0.99x
CharIteration_punctuated_unicodeScalars_Backwards 3652 3655 +0.1% 1.00x
CharIteration_russian_unicodeScalars 13034 13201 +1.3% 0.99x
CharIteration_russian_unicodeScalars_Backwards 13473 13476 +0.0% 1.00x
CharIteration_tweet_unicodeScalars 30787 31155 +1.2% 0.99x
CharIteration_tweet_unicodeScalars_Backwards 31971 31972 +0.0% 1.00x (?)
CharIteration_utf16_unicodeScalars 79244 81621 +3.0% 0.97x
CharIteration_utf16_unicodeScalars_Backwards 112504 113300 +0.7% 0.99x (?)
CharacterLiteralsLarge 5942 5959 +0.3% 1.00x
CharacterLiteralsSmall 403 403 +0.0% 1.00x
Chars 411 409 -0.5% 1.00x (?)
ClassArrayGetter 13 13 +0.0% 1.00x
DeadArray 182 183 +0.5% 0.99x (?)
Dictionary 583 578 -0.9% 1.01x
Dictionary2 1892 1905 +0.7% 0.99x
Dictionary2OfObjects 3279 3303 +0.7% 0.99x (?)
Dictionary3 467 468 +0.2% 1.00x
Dictionary3OfObjects 841 840 -0.1% 1.00x
DictionaryBridge 2633 2632 -0.0% 1.00x (?)
DictionaryGroup 276 272 -1.4% 1.01x
DictionaryGroupOfObjects 1800 1803 +0.2% 1.00x (?)
DictionaryLiteral 1487 1483 -0.3% 1.00x (?)
DictionaryOfObjects 2272 2267 -0.2% 1.00x (?)
DictionaryRemove 2452 2572 +4.9% 0.95x
DictionaryRemoveOfObjects 23911 23856 -0.2% 1.00x (?)
DictionarySwap 443 439 -0.9% 1.01x
DictionarySwapOfObjects 7466 7466 +0.0% 1.00x
DropFirstAnyCollection 55 55 +0.0% 1.00x
DropFirstAnyCollectionLazy 75426 75474 +0.1% 1.00x (?)
DropFirstAnySeqCRangeIter 28065 28048 -0.1% 1.00x
DropFirstAnySeqCRangeIterLazy 28052 28041 -0.0% 1.00x (?)
DropFirstAnySeqCntRange 50 50 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 50 50 +0.0% 1.00x
DropFirstAnySequence 6204 6218 +0.2% 1.00x (?)
DropFirstAnySequenceLazy 6221 6211 -0.2% 1.00x (?)
DropFirstArray 30 30 +0.0% 1.00x
DropFirstArrayLazy 30 30 +0.0% 1.00x
DropFirstCountableRange 18 18 +0.0% 1.00x
DropFirstCountableRangeLazy 19 19 +0.0% 1.00x
DropFirstSequence 2018 2019 +0.0% 1.00x (?)
DropFirstSequenceLazy 1944 1944 +0.0% 1.00x
DropLastAnyCollection 21 21 +0.0% 1.00x
DropLastAnyCollectionLazy 25118 25115 -0.0% 1.00x (?)
DropLastAnySeqCRangeIter 4703 4704 +0.0% 1.00x (?)
DropLastAnySeqCRangeIterLazy 4703 4703 +0.0% 1.00x
DropLastAnySeqCntRange 16 16 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 16 16 +0.0% 1.00x
DropLastAnySequence 6712 6717 +0.1% 1.00x
DropLastAnySequenceLazy 6675 6678 +0.0% 1.00x (?)
DropLastArray 10 10 +0.0% 1.00x
DropLastArrayLazy 10 10 +0.0% 1.00x
DropLastCountableRange 6 6 +0.0% 1.00x
DropLastCountableRangeLazy 6 6 +0.0% 1.00x
DropLastSequence 618 607 -1.8% 1.02x
DropLastSequenceLazy 618 608 -1.6% 1.02x
DropWhileAnyCollection 68 68 +0.0% 1.00x
DropWhileAnyCollectionLazy 90 90 +0.0% 1.00x
DropWhileAnySeqCRangeIter 22519 22526 +0.0% 1.00x (?)
DropWhileAnySeqCRangeIterLazy 89 89 +0.0% 1.00x
DropWhileAnySeqCntRange 63 63 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 89 89 +0.0% 1.00x
DropWhileAnySequence 7296 7303 +0.1% 1.00x (?)
DropWhileAnySequenceLazy 1932 1932 +0.0% 1.00x
DropWhileArray 43 43 +0.0% 1.00x
DropWhileArrayLazy 78 78 +0.0% 1.00x
DropWhileCountableRange 19 19 +0.0% 1.00x
DropWhileCountableRangeLazy 70 70 +0.0% 1.00x
DropWhileSequence 1624 1624 +0.0% 1.00x
DropWhileSequenceLazy 47 47 +0.0% 1.00x
EqualStringSubstring 387 387 +0.0% 1.00x
EqualSubstringString 387 387 +0.0% 1.00x
EqualSubstringSubstring 386 386 +0.0% 1.00x
EqualSubstringSubstringGenericEquatable 387 387 +0.0% 1.00x
ErrorHandling 2084 2082 -0.1% 1.00x (?)
FilterEvenUsingReduce 1294 1312 +1.4% 0.99x (?)
FilterEvenUsingReduceInto 144 145 +0.7% 0.99x (?)
FrequenciesUsingReduce 7525 7481 -0.6% 1.01x
FrequenciesUsingReduceInto 4158 4127 -0.7% 1.01x (?)
Hanoi 3565 3544 -0.6% 1.01x
HashTest 1640 1630 -0.6% 1.01x (?)
Histogram 295 296 +0.3% 1.00x (?)
Integrate 249 249 +0.0% 1.00x
IterateData 1399 1368 -2.2% 1.02x
Join 387 386 -0.3% 1.00x (?)
LazilyFilteredArrays 65578 65684 +0.2% 1.00x (?)
LazilyFilteredRange 3771 3782 +0.3% 1.00x
LessSubstringSubstring 385 385 +0.0% 1.00x
LessSubstringSubstringGenericComparable 385 385 +0.0% 1.00x
LinkedList 6976 6959 -0.2% 1.00x
MapReduce 361 362 +0.3% 1.00x (?)
MapReduceAnyCollection 362 362 +0.0% 1.00x
MapReduceAnyCollectionShort 2103 2102 -0.0% 1.00x (?)
MapReduceClass 3061 3068 +0.2% 1.00x
MapReduceClassShort 4545 4545 +0.0% 1.00x
MapReduceLazyCollection 12 12 +0.0% 1.00x
MapReduceLazyCollectionShort 36 36 +0.0% 1.00x
MapReduceLazySequence 90 90 +0.0% 1.00x
MapReduceSequence 437 438 +0.2% 1.00x (?)
MapReduceShort 1992 1992 +0.0% 1.00x
MapReduceShortString 21 21 +0.0% 1.00x
MapReduceString 102 98 -3.9% 1.04x
Memset 235 234 -0.4% 1.00x
MonteCarloE 10364 10343 -0.2% 1.00x
MonteCarloPi 43946 43953 +0.0% 1.00x
NSDictionaryCastToSwift 5491 5281 -3.8% 1.04x (?)
NSError 313 312 -0.3% 1.00x (?)
NSStringConversion 357 358 +0.3% 1.00x
NopDeinit 21375 21383 +0.0% 1.00x (?)
ObjectAllocation 179 179 +0.0% 1.00x
ObjectiveCBridgeFromNSArrayAnyObject 23029 22921 -0.5% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 3478 3478 +0.0% 1.00x
ObjectiveCBridgeFromNSArrayAnyObjectToString 39864 40260 +1.0% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 34168 34034 -0.4% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 124828 123875 -0.8% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToString 98613 98044 -0.6% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToStringForced 105229 104120 -1.1% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObject 64804 64833 +0.0% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4270 4245 -0.6% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 67532 68064 +0.8% 0.99x
ObjectiveCBridgeFromNSSetAnyObjectToStringForced 68919 70848 +2.8% 0.97x (?)
ObjectiveCBridgeFromNSString 987 987 +0.0% 1.00x
ObjectiveCBridgeFromNSStringForced 1872 1873 +0.1% 1.00x
ObjectiveCBridgeStubDataAppend 3968 3934 -0.9% 1.01x (?)
ObjectiveCBridgeStubDateAccess 181 181 +0.0% 1.00x
ObjectiveCBridgeStubDateMutation 272 272 +0.0% 1.00x
ObjectiveCBridgeStubFromArrayOfNSString 25182 25176 -0.0% 1.00x (?)
ObjectiveCBridgeStubFromNSDate 3806 3836 +0.8% 0.99x
ObjectiveCBridgeStubFromNSDateRef 4128 4340 +5.1% 0.95x
ObjectiveCBridgeStubFromNSString 555 563 +1.4% 0.99x
ObjectiveCBridgeStubFromNSStringRef 143 142 -0.7% 1.01x
ObjectiveCBridgeStubNSDataAppend 2403 2381 -0.9% 1.01x (?)
ObjectiveCBridgeStubNSDateRefAccess 338 338 +0.0% 1.00x
ObjectiveCBridgeStubToArrayOfNSString 29449 29384 -0.2% 1.00x (?)
ObjectiveCBridgeStubToNSDate 14737 15150 +2.8% 0.97x (?)
ObjectiveCBridgeStubToNSDateRef 3335 3316 -0.6% 1.01x (?)
ObjectiveCBridgeStubToNSString 1507 1508 +0.1% 1.00x (?)
ObjectiveCBridgeStubToNSStringRef 108 108 +0.0% 1.00x
ObjectiveCBridgeStubURLAppendPath 219036 219793 +0.3% 1.00x (?)
ObjectiveCBridgeStubURLAppendPathRef 220586 218289 -1.0% 1.01x (?)
ObjectiveCBridgeToNSArray 29378 29112 -0.9% 1.01x (?)
ObjectiveCBridgeToNSDictionary 45928 46134 +0.4% 1.00x (?)
ObjectiveCBridgeToNSSet 39716 39778 +0.2% 1.00x (?)
ObjectiveCBridgeToNSString 1273 1269 -0.3% 1.00x
ObserverClosure 2326 2324 -0.1% 1.00x (?)
ObserverForwarderStruct 1140 1141 +0.1% 1.00x (?)
ObserverPartiallyAppliedMethod 3795 3795 +0.0% 1.00x
ObserverUnappliedMethod 2675 2666 -0.3% 1.00x (?)
OpenClose 3 3 +0.0% 1.00x
Phonebook 6317 6096 -3.5% 1.04x
PolymorphicCalls 17 17 +0.0% 1.00x
PrefixAnyCollection 55 55 +0.0% 1.00x
PrefixAnyCollectionLazy 75513 75654 +0.2% 1.00x (?)
PrefixAnySeqCRangeIter 22000 22007 +0.0% 1.00x (?)
PrefixAnySeqCRangeIterLazy 22007 22010 +0.0% 1.00x (?)
PrefixAnySeqCntRange 50 50 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 50 50 +0.0% 1.00x
PrefixAnySequence 5410 5441 +0.6% 0.99x
PrefixAnySequenceLazy 5413 5416 +0.1% 1.00x
PrefixArray 30 30 +0.0% 1.00x
PrefixArrayLazy 30 30 +0.0% 1.00x
PrefixCountableRangeLazy 18 18 +0.0% 1.00x
PrefixSequence 1515 1515 +0.0% 1.00x
PrefixSequenceLazy 1460 1460 +0.0% 1.00x
PrefixWhileAnyCollection 93 93 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 66 66 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 12863 12860 -0.0% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 66 66 +0.0% 1.00x
PrefixWhileAnySeqCntRange 88 88 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 66 66 +0.0% 1.00x
PrefixWhileAnySequence 14297 14299 +0.0% 1.00x (?)
PrefixWhileAnySequenceLazy 1436 1436 +0.0% 1.00x
PrefixWhileArray 68 68 +0.0% 1.00x
PrefixWhileArrayLazy 37 37 +0.0% 1.00x
PrefixWhileCountableRange 29 29 +0.0% 1.00x
PrefixWhileCountableRangeLazy 18 18 +0.0% 1.00x
PrefixWhileSequence 336 335 -0.3% 1.00x
PrefixWhileSequenceLazy 28 28 +0.0% 1.00x
Prims 766 759 -0.9% 1.01x
PrimsSplit 767 768 +0.1% 1.00x (?)
ProtocolDispatch 3048 3141 +3.1% 0.97x (?)
ProtocolDispatch2 172 171 -0.6% 1.01x
RC4 157 157 +0.0% 1.00x
RGBHistogram 2150 2156 +0.3% 1.00x (?)
RGBHistogramOfObjects 23335 23348 +0.1% 1.00x (?)
RangeAssignment 357 353 -1.1% 1.01x (?)
RecursiveOwnedParameter 2307 2307 +0.0% 1.00x
ReversedArray 46 46 +0.0% 1.00x
ReversedBidirectional 29126 29184 +0.2% 1.00x
ReversedDictionary 108 106 -1.9% 1.02x
SetExclusiveOr 2917 2868 -1.7% 1.02x (?)
SetExclusiveOr_OfObjects 8429 8280 -1.8% 1.02x (?)
SetIntersect 267 270 +1.1% 0.99x (?)
SetIntersect_OfObjects 1720 1729 +0.5% 0.99x
SetIsSubsetOf 294 294 +0.0% 1.00x
SetIsSubsetOf_OfObjects 366 374 +2.2% 0.98x
SetUnion 2809 2787 -0.8% 1.01x (?)
SetUnion_OfObjects 6944 6942 -0.0% 1.00x (?)
SevenBoom 1588 1529 -3.7% 1.04x (?)
Sim2DArray 347 348 +0.3% 1.00x (?)
SortLargeExistentials 8442 8359 -1.0% 1.01x
SortLettersInPlace 1143 1145 +0.2% 1.00x (?)
SortSortedStrings 884 876 -0.9% 1.01x
SortStrings 1695 1680 -0.9% 1.01x
SortStringsUnicode 7810 7828 +0.2% 1.00x
StackPromo 23000 22473 -2.3% 1.02x
StaticArray 5 5 +0.0% 1.00x
StrComplexWalk 1649 1648 -0.1% 1.00x
StrToInt 1885 1806 -4.2% 1.04x
StringAdder 3492 3490 -0.1% 1.00x (?)
StringBuilder 999 994 -0.5% 1.01x (?)
StringBuilderLong 918 923 +0.5% 0.99x
StringEdits 138244 137860 -0.3% 1.00x (?)
StringEnumRawValueInitialization 821 793 -3.4% 1.04x
StringEqualPointerComparison 243 245 +0.8% 0.99x (?)
StringFromLongWholeSubstring 183 182 -0.5% 1.01x
StringFromLongWholeSubstringGeneric 23 23 +0.0% 1.00x
StringHasPrefix 9 9 +0.0% 1.00x
StringHasPrefixUnicode 14728 14811 +0.6% 0.99x
StringHasSuffix 9 9 +0.0% 1.00x
StringHasSuffixUnicode 61469 60957 -0.8% 1.01x
StringInterpolation 11051 11086 +0.3% 1.00x (?)
StringMatch 7371 7302 -0.9% 1.01x
StringUTF16Builder 1882 1890 +0.4% 1.00x (?)
StringWalk 1492 1488 -0.3% 1.00x
SubstringComparable 1519 1524 +0.3% 1.00x
SubstringEqualString 1364 1369 +0.4% 1.00x
SubstringEquatable 3542 3548 +0.2% 1.00x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 62 62 +0.0% 1.00x
SuffixAnyCollection 21 21 +0.0% 1.00x
SuffixAnyCollectionLazy 25155 25154 -0.0% 1.00x (?)
SuffixAnySeqCRangeIter 5035 5056 +0.4% 1.00x
SuffixAnySeqCRangeIterLazy 5033 5055 +0.4% 1.00x
SuffixAnySeqCntRange 15 15 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 15 15 +0.0% 1.00x
SuffixAnySequence 6695 6697 +0.0% 1.00x (?)
SuffixAnySequenceLazy 6671 6679 +0.1% 1.00x (?)
SuffixArray 10 10 +0.0% 1.00x
SuffixArrayLazy 10 10 +0.0% 1.00x
SuffixCountableRange 6 6 +0.0% 1.00x
SuffixCountableRangeLazy 6 6 +0.0% 1.00x
SuffixSequence 4634 4690 +1.2% 0.99x
SuffixSequenceLazy 4635 4641 +0.1% 1.00x
SumUsingReduce 97 97 +0.0% 1.00x
SumUsingReduceInto 97 97 +0.0% 1.00x
SuperChars 83377 83427 +0.1% 1.00x (?)
TwoSum 954 978 +2.5% 0.98x
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 258 257 -0.4% 1.00x
Walsh 384 383 -0.3% 1.00x (?)
XorLoop 346 347 +0.3% 1.00x (?)
accessGlobal 3 3 +0.0% 1.00x
accessInMatSet 18 18 +0.0% 1.00x
accessIndependent 2 2 +0.0% 1.00x
Added (4)
TEST MIN MAX MEAN MAX_RSS
ArraySetElement 455 456 455 3607211
ExclusivityGlobal 3 3 3 3588096
ExclusivityInMatSet 18 18 18 3594923
ExclusivityIndependent 2 2 2 3592192

Unoptimized (Onone)

Regression (3)
TEST OLD NEW DELTA SPEEDUP
PopFrontUnsafePointer 6608 7576 +14.6% 0.87x
TypeFlood 161 174 +8.1% 0.93x (?)
PopFrontArray 10114 10682 +5.6% 0.95x
Improvement (3)
TEST OLD NEW DELTA SPEEDUP
ObjectiveCBridgeStubDateMutation 571 515 -9.8% 1.11x
ObjectiveCBridgeStubToNSDate 15622 14551 -6.9% 1.07x
XorLoop 25281 24008 -5.0% 1.05x
No Changes (323)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 5002 4952 -1.0% 1.01x
AnyHashableWithAClass 85677 85678 +0.0% 1.00x (?)
Array2D 633870 633175 -0.1% 1.00x
ArrayAppend 4025 4026 +0.0% 1.00x
ArrayAppendArrayOfInt 653 653 +0.0% 1.00x
ArrayAppendAscii 53216 52906 -0.6% 1.01x
ArrayAppendFromGeneric 656 657 +0.2% 1.00x
ArrayAppendGenericStructs 1341 1311 -2.2% 1.02x
ArrayAppendLatin1 75296 75268 -0.0% 1.00x (?)
ArrayAppendLazyMap 227385 231974 +2.0% 0.98x
ArrayAppendOptionals 1342 1311 -2.3% 1.02x
ArrayAppendRepeatCol 235193 236863 +0.7% 0.99x
ArrayAppendReserved 3903 3905 +0.1% 1.00x
ArrayAppendSequence 76989 76909 -0.1% 1.00x
ArrayAppendStrings 15216 15235 +0.1% 1.00x (?)
ArrayAppendToFromGeneric 656 656 +0.0% 1.00x
ArrayAppendToGeneric 657 658 +0.2% 1.00x (?)
ArrayAppendUTF16 74710 74798 +0.1% 1.00x
ArrayInClass 6298 6407 +1.7% 0.98x
ArrayLiteral 1779 1755 -1.3% 1.01x
ArrayOfGenericPOD 1207 1205 -0.2% 1.00x (?)
ArrayOfGenericRef 10144 10046 -1.0% 1.01x (?)
ArrayOfPOD 711 713 +0.3% 1.00x
ArrayOfRef 9259 9235 -0.3% 1.00x (?)
ArrayPlusEqualArrayOfInt 654 655 +0.2% 1.00x
ArrayPlusEqualFiveElementCollection 305584 307160 +0.5% 0.99x (?)
ArrayPlusEqualSingleElementCollection 303102 303452 +0.1% 1.00x (?)
ArrayPlusEqualThreeElements 11161 11283 +1.1% 0.99x (?)
ArraySubscript 85806 85412 -0.5% 1.00x (?)
ArrayValueProp 3564 3556 -0.2% 1.00x (?)
ArrayValueProp2 18909 18808 -0.5% 1.01x
ArrayValueProp3 4020 4013 -0.2% 1.00x
ArrayValueProp4 3979 3973 -0.2% 1.00x (?)
BitCount 1695 1693 -0.1% 1.00x
ByteSwap 4004 4026 +0.5% 0.99x
CStringLongAscii 4728 4756 +0.6% 0.99x (?)
CStringLongNonAscii 2376 2374 -0.1% 1.00x (?)
CStringShortAscii 8743 8734 -0.1% 1.00x (?)
Calculator 1167 1112 -4.7% 1.05x
CaptureProp 125289 124910 -0.3% 1.00x
CharIndexing_ascii_unicodeScalars 473054 490853 +3.8% 0.96x
CharIndexing_ascii_unicodeScalars_Backwards 507747 511402 +0.7% 0.99x (?)
CharIndexing_chinese_unicodeScalars 355235 365883 +3.0% 0.97x
CharIndexing_chinese_unicodeScalars_Backwards 383252 386530 +0.9% 0.99x (?)
CharIndexing_japanese_unicodeScalars 578260 580095 +0.3% 1.00x (?)
CharIndexing_japanese_unicodeScalars_Backwards 608920 614392 +0.9% 0.99x (?)
CharIndexing_korean_unicodeScalars 457121 469647 +2.7% 0.97x
CharIndexing_korean_unicodeScalars_Backwards 492269 495544 +0.7% 0.99x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 83399 82620 -0.9% 1.01x (?)
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 87871 88780 +1.0% 0.99x (?)
CharIndexing_punctuated_unicodeScalars 103664 106104 +2.4% 0.98x
CharIndexing_punctuated_unicodeScalars_Backwards 110941 111665 +0.7% 0.99x (?)
CharIndexing_russian_unicodeScalars 395874 403049 +1.8% 0.98x (?)
CharIndexing_russian_unicodeScalars_Backwards 423173 425184 +0.5% 1.00x (?)
CharIndexing_tweet_unicodeScalars 931814 959632 +3.0% 0.97x
CharIndexing_tweet_unicodeScalars_Backwards 1005146 1020221 +1.5% 0.99x
CharIndexing_utf16_unicodeScalars 525631 529631 +0.8% 0.99x
CharIndexing_utf16_unicodeScalars_Backwards 569624 566590 -0.5% 1.01x
CharIteration_ascii_unicodeScalars 184432 184397 -0.0% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 315285 313119 -0.7% 1.01x
CharIteration_chinese_unicodeScalars 139784 139611 -0.1% 1.00x
CharIteration_chinese_unicodeScalars_Backwards 236612 236938 +0.1% 1.00x
CharIteration_japanese_unicodeScalars 219960 221275 +0.6% 0.99x
CharIteration_japanese_unicodeScalars_Backwards 374985 376052 +0.3% 1.00x
CharIteration_korean_unicodeScalars 178127 178887 +0.4% 1.00x
CharIteration_korean_unicodeScalars_Backwards 305768 304117 -0.5% 1.01x (?)
CharIteration_punctuatedJapanese_unicodeScalars 32608 32791 +0.6% 0.99x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 54403 54476 +0.1% 1.00x (?)
CharIteration_punctuated_unicodeScalars 41327 41122 -0.5% 1.00x
CharIteration_punctuated_unicodeScalars_Backwards 69111 69018 -0.1% 1.00x
CharIteration_russian_unicodeScalars 153095 154078 +0.6% 0.99x
CharIteration_russian_unicodeScalars_Backwards 261886 260650 -0.5% 1.00x (?)
CharIteration_tweet_unicodeScalars 362829 364849 +0.6% 0.99x (?)
CharIteration_tweet_unicodeScalars_Backwards 619356 620154 +0.1% 1.00x (?)
CharIteration_utf16_unicodeScalars 204722 204218 -0.2% 1.00x (?)
CharIteration_utf16_unicodeScalars_Backwards 393014 395476 +0.6% 0.99x
CharacterLiteralsLarge 6183 6173 -0.2% 1.00x (?)
CharacterLiteralsSmall 701 708 +1.0% 0.99x
Chars 50362 50442 +0.2% 1.00x
ClassArrayGetter 1028 1013 -1.5% 1.01x
DeadArray 118279 115434 -2.4% 1.02x (?)
Dictionary 3051 3049 -0.1% 1.00x (?)
Dictionary2 3481 3469 -0.3% 1.00x (?)
Dictionary2OfObjects 6087 6043 -0.7% 1.01x
Dictionary3 1310 1307 -0.2% 1.00x (?)
Dictionary3OfObjects 2294 2279 -0.7% 1.01x
DictionaryBridge 2705 2697 -0.3% 1.00x (?)
DictionaryGroup 5512 5510 -0.0% 1.00x (?)
DictionaryGroupOfObjects 8201 8240 +0.5% 1.00x
DictionaryLiteral 8658 8602 -0.6% 1.01x
DictionaryOfObjects 6535 6649 +1.7% 0.98x
DictionaryRemove 22187 21795 -1.8% 1.02x
DictionaryRemoveOfObjects 60295 60286 -0.0% 1.00x (?)
DictionarySwap 5302 5479 +3.3% 0.97x
DictionarySwapOfObjects 23056 23016 -0.2% 1.00x (?)
DropFirstAnyCollection 21140 20896 -1.2% 1.01x (?)
DropFirstAnyCollectionLazy 145227 142000 -2.2% 1.02x
DropFirstAnySeqCRangeIter 31392 31357 -0.1% 1.00x (?)
DropFirstAnySeqCRangeIterLazy 31151 31583 +1.4% 0.99x
DropFirstAnySeqCntRange 20864 20881 +0.1% 1.00x (?)
DropFirstAnySeqCntRangeLazy 20803 20670 -0.6% 1.01x
DropFirstAnySequence 15842 15722 -0.8% 1.01x (?)
DropFirstAnySequenceLazy 15737 15796 +0.4% 1.00x
DropFirstArray 6385 6182 -3.2% 1.03x
DropFirstArrayLazy 44752 44874 +0.3% 1.00x
DropFirstCountableRange 340 340 +0.0% 1.00x
DropFirstCountableRangeLazy 40584 40601 +0.0% 1.00x (?)
DropFirstSequence 14695 14696 +0.0% 1.00x (?)
DropFirstSequenceLazy 14687 14860 +1.2% 0.99x
DropLastAnyCollection 7080 7038 -0.6% 1.01x
DropLastAnyCollectionLazy 47993 47200 -1.7% 1.02x (?)
DropLastAnySeqCRangeIter 47705 48151 +0.9% 0.99x (?)
DropLastAnySeqCRangeIterLazy 47779 47865 +0.2% 1.00x (?)
DropLastAnySeqCntRange 7034 6973 -0.9% 1.01x
DropLastAnySeqCntRangeLazy 6956 6997 +0.6% 0.99x
DropLastAnySequence 33639 33805 +0.5% 1.00x
DropLastAnySequenceLazy 33609 33616 +0.0% 1.00x (?)
DropLastArray 2145 2094 -2.4% 1.02x
DropLastArrayLazy 14927 14964 +0.2% 1.00x
DropLastCountableRange 119 119 +0.0% 1.00x
DropLastCountableRangeLazy 13529 13578 +0.4% 1.00x (?)
DropLastSequence 33248 33825 +1.7% 0.98x
DropLastSequenceLazy 33227 33459 +0.7% 0.99x
DropWhileAnyCollection 27026 27091 +0.2% 1.00x
DropWhileAnyCollectionLazy 29551 29734 +0.6% 0.99x
DropWhileAnySeqCRangeIter 33796 33614 -0.5% 1.01x
DropWhileAnySeqCRangeIterLazy 29771 29644 -0.4% 1.00x
DropWhileAnySeqCntRange 26994 27102 +0.4% 1.00x
DropWhileAnySeqCntRangeLazy 30028 29835 -0.6% 1.01x
DropWhileAnySequence 18724 18779 +0.3% 1.00x
DropWhileAnySequenceLazy 15072 15319 +1.6% 0.98x
DropWhileArray 9979 9997 +0.2% 1.00x
DropWhileArrayLazy 17342 17366 +0.1% 1.00x
DropWhileCountableRange 6494 6589 +1.5% 0.99x
DropWhileCountableRangeLazy 28479 28980 +1.8% 0.98x
DropWhileSequence 17618 17635 +0.1% 1.00x (?)
DropWhileSequenceLazy 13823 13797 -0.2% 1.00x (?)
EqualStringSubstring 677 674 -0.4% 1.00x
EqualSubstringString 674 673 -0.1% 1.00x
EqualSubstringSubstring 793 796 +0.4% 1.00x (?)
EqualSubstringSubstringGenericEquatable 422 421 -0.2% 1.00x
ErrorHandling 6947 6843 -1.5% 1.02x (?)
FilterEvenUsingReduce 4298 4307 +0.2% 1.00x (?)
FilterEvenUsingReduceInto 2496 2509 +0.5% 0.99x (?)
FrequenciesUsingReduce 15931 16051 +0.8% 0.99x (?)
FrequenciesUsingReduceInto 8891 8943 +0.6% 0.99x (?)
Hanoi 19147 19050 -0.5% 1.01x
HashTest 17295 17133 -0.9% 1.01x (?)
Histogram 8886 8980 +1.1% 0.99x
Integrate 677 694 +2.5% 0.98x
IterateData 13399 13408 +0.1% 1.00x (?)
Join 1501 1502 +0.1% 1.00x (?)
LazilyFilteredArrays 1741411 1741651 +0.0% 1.00x (?)
LazilyFilteredRange 734488 732932 -0.2% 1.00x
LessSubstringSubstring 793 800 +0.9% 0.99x
LessSubstringSubstringGenericComparable 440 441 +0.2% 1.00x
LinkedList 40120 40434 +0.8% 0.99x
MapReduce 38299 38664 +1.0% 0.99x
MapReduceAnyCollection 38473 38558 +0.2% 1.00x (?)
MapReduceAnyCollectionShort 51188 51471 +0.6% 0.99x (?)
MapReduceClass 43559 43416 -0.3% 1.00x
MapReduceClassShort 54623 54565 -0.1% 1.00x (?)
MapReduceLazyCollection 34634 34539 -0.3% 1.00x
MapReduceLazyCollectionShort 45825 45559 -0.6% 1.01x (?)
MapReduceLazySequence 30217 30739 +1.7% 0.98x
MapReduceSequence 45285 45398 +0.2% 1.00x
MapReduceShort 50511 51376 +1.7% 0.98x
MapReduceShortString 286 287 +0.3% 1.00x
MapReduceString 2681 2688 +0.3% 1.00x
Memset 44633 44605 -0.1% 1.00x
MonteCarloE 949535 947160 -0.3% 1.00x (?)
MonteCarloPi 4107439 4063803 -1.1% 1.01x (?)
NSDictionaryCastToSwift 6621 6507 -1.7% 1.02x (?)
NSError 737 746 +1.2% 0.99x (?)
NSStringConversion 407 392 -3.7% 1.04x
NopDeinit 172111 172940 +0.5% 1.00x
ObjectAllocation 1454 1468 +1.0% 0.99x
ObjectiveCBridgeFromNSArrayAnyObject 25391 24951 -1.7% 1.02x
ObjectiveCBridgeFromNSArrayAnyObjectForced 6957 6887 -1.0% 1.01x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 41613 41781 +0.4% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 34959 35212 +0.7% 0.99x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 123457 129035 +4.5% 0.96x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectForced 7646 7638 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToString 96977 99168 +2.3% 0.98x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToStringForced 104875 110034 +4.9% 0.95x
ObjectiveCBridgeFromNSSetAnyObject 68620 69062 +0.6% 0.99x
ObjectiveCBridgeFromNSSetAnyObjectForced 7739 7612 -1.6% 1.02x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 73884 73156 -1.0% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObjectToStringForced 74458 75312 +1.1% 0.99x (?)
ObjectiveCBridgeFromNSString 3961 4000 +1.0% 0.99x
ObjectiveCBridgeFromNSStringForced 2256 2229 -1.2% 1.01x
ObjectiveCBridgeStubDataAppend 4442 4405 -0.8% 1.01x (?)
ObjectiveCBridgeStubDateAccess 1068 1034 -3.2% 1.03x
ObjectiveCBridgeStubFromArrayOfNSString 25232 25089 -0.6% 1.01x (?)
ObjectiveCBridgeStubFromNSDate 4075 4178 +2.5% 0.98x
ObjectiveCBridgeStubFromNSDateRef 4432 4340 -2.1% 1.02x
ObjectiveCBridgeStubFromNSString 594 577 -2.9% 1.03x
ObjectiveCBridgeStubFromNSStringRef 181 181 +0.0% 1.00x
ObjectiveCBridgeStubNSDataAppend 2837 2820 -0.6% 1.01x (?)
ObjectiveCBridgeStubNSDateMutationRef 15674 15637 -0.2% 1.00x (?)
ObjectiveCBridgeStubNSDateRefAccess 1218 1212 -0.5% 1.00x
ObjectiveCBridgeStubToArrayOfNSString 29014 29324 +1.1% 0.99x (?)
ObjectiveCBridgeStubToNSDateRef 3238 3327 +2.7% 0.97x (?)
ObjectiveCBridgeStubToNSString 1541 1559 +1.2% 0.99x
ObjectiveCBridgeStubToNSStringRef 155 155 +0.0% 1.00x
ObjectiveCBridgeStubURLAppendPath 221846 219231 -1.2% 1.01x (?)
ObjectiveCBridgeStubURLAppendPathRef 220016 225542 +2.5% 0.98x (?)
ObjectiveCBridgeToNSArray 29491 30027 +1.8% 0.98x
ObjectiveCBridgeToNSDictionary 46888 46414 -1.0% 1.01x (?)
ObjectiveCBridgeToNSSet 39735 40117 +1.0% 0.99x (?)
ObjectiveCBridgeToNSString 1306 1373 +5.1% 0.95x
ObserverClosure 6939 6955 +0.2% 1.00x
ObserverForwarderStruct 5081 5085 +0.1% 1.00x (?)
ObserverPartiallyAppliedMethod 8372 8397 +0.3% 1.00x (?)
ObserverUnappliedMethod 8739 8788 +0.6% 0.99x
OpenClose 396 403 +1.8% 0.98x
Phonebook 21696 21411 -1.3% 1.01x
PolymorphicCalls 5237 5168 -1.3% 1.01x
PopFrontArrayGeneric 9015 9236 +2.5% 0.98x
PrefixAnyCollection 21100 20783 -1.5% 1.02x
PrefixAnyCollectionLazy 142652 141827 -0.6% 1.01x (?)
PrefixAnySeqCRangeIter 24897 25404 +2.0% 0.98x
PrefixAnySeqCRangeIterLazy 24746 24933 +0.8% 0.99x (?)
PrefixAnySeqCntRange 20982 20896 -0.4% 1.00x
PrefixAnySeqCntRangeLazy 20787 20858 +0.3% 1.00x
PrefixAnySequence 12940 12949 +0.1% 1.00x
PrefixAnySequenceLazy 12878 12901 +0.2% 1.00x (?)
PrefixArray 6398 6258 -2.2% 1.02x
PrefixArrayLazy 44742 44916 +0.4% 1.00x (?)
PrefixCountableRange 340 338 -0.6% 1.01x
PrefixCountableRangeLazy 40698 40566 -0.3% 1.00x (?)
PrefixSequence 11816 11814 -0.0% 1.00x (?)
PrefixSequenceLazy 11898 11826 -0.6% 1.01x
PrefixWhileAnyCollection 39535 39417 -0.3% 1.00x (?)
PrefixWhileAnyCollectionLazy 24089 24361 +1.1% 0.99x
PrefixWhileAnySeqCRangeIter 43594 43812 +0.5% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 24171 24487 +1.3% 0.99x
PrefixWhileAnySeqCntRange 39367 39623 +0.7% 0.99x (?)
PrefixWhileAnySeqCntRangeLazy 24521 24467 -0.2% 1.00x (?)
PrefixWhileAnySequence 32749 32775 +0.1% 1.00x
PrefixWhileAnySequenceLazy 13387 13404 +0.1% 1.00x
PrefixWhileArray 17339 17301 -0.2% 1.00x
PrefixWhileArrayLazy 15234 15227 -0.0% 1.00x
PrefixWhileCountableRange 18728 19019 +1.6% 0.98x
PrefixWhileCountableRangeLazy 23199 23817 +2.7% 0.97x
PrefixWhileSequence 31579 31626 +0.1% 1.00x
PrefixWhileSequenceLazy 12535 12618 +0.7% 0.99x
Prims 10552 10598 +0.4% 1.00x
PrimsSplit 10495 10553 +0.6% 0.99x
ProtocolDispatch 7875 7751 -1.6% 1.02x (?)
ProtocolDispatch2 502 503 +0.2% 1.00x
RC4 18396 18796 +2.2% 0.98x (?)
RGBHistogram 34084 34000 -0.2% 1.00x (?)
RGBHistogramOfObjects 105270 105260 -0.0% 1.00x (?)
RangeAssignment 5676 5665 -0.2% 1.00x (?)
RecursiveOwnedParameter 10820 10740 -0.7% 1.01x
ReversedArray 43529 43507 -0.1% 1.00x (?)
ReversedBidirectional 75943 76577 +0.8% 0.99x (?)
ReversedDictionary 29351 29400 +0.2% 1.00x (?)
SetExclusiveOr 22998 23023 +0.1% 1.00x (?)
SetExclusiveOr_OfObjects 48018 48423 +0.8% 0.99x (?)
SetIntersect 12580 12569 -0.1% 1.00x
SetIntersect_OfObjects 12473 12576 +0.8% 0.99x
SetIsSubsetOf 1915 1883 -1.7% 1.02x
SetIsSubsetOf_OfObjects 1598 1546 -3.3% 1.03x
SetUnion 11938 11925 -0.1% 1.00x (?)
SetUnion_OfObjects 33593 33651 +0.2% 1.00x
SevenBoom 1769 1745 -1.4% 1.01x (?)
Sim2DArray 44378 44150 -0.5% 1.01x (?)
SortLargeExistentials 17287 17311 +0.1% 1.00x (?)
SortLettersInPlace 3029 3067 +1.3% 0.99x
SortSortedStrings 1436 1434 -0.1% 1.00x
SortStrings 2514 2468 -1.8% 1.02x
SortStringsUnicode 8883 8989 +1.2% 0.99x
StackPromo 102333 104137 +1.8% 0.98x (?)
StaticArray 4736 4756 +0.4% 1.00x (?)
StrComplexWalk 6986 6992 +0.1% 1.00x (?)
StrToInt 127523 125472 -1.6% 1.02x
StringAdder 3785 3780 -0.1% 1.00x (?)
StringBuilder 7149 7148 -0.0% 1.00x (?)
StringBuilderLong 1084 1098 +1.3% 0.99x (?)
StringEdits 381333 382555 +0.3% 1.00x (?)
StringEnumRawValueInitialization 12861 12807 -0.4% 1.00x (?)
StringEqualPointerComparison 2493 2408 -3.4% 1.04x
StringFromLongWholeSubstring 209 208 -0.5% 1.00x
StringFromLongWholeSubstringGeneric 215 213 -0.9% 1.01x
StringHasPrefix 1738 1740 +0.1% 1.00x
StringHasPrefixUnicode 16691 16700 +0.1% 1.00x (?)
StringHasSuffix 1928 1873 -2.9% 1.03x (?)
StringHasSuffixUnicode 63404 63497 +0.1% 1.00x
StringInterpolation 13916 13928 +0.1% 1.00x (?)
StringMatch 34811 34687 -0.4% 1.00x (?)
StringUTF16Builder 7989 7939 -0.6% 1.01x (?)
StringWalk 12008 12065 +0.5% 1.00x
StringWithCString 57469 57480 +0.0% 1.00x (?)
SubstringComparable 4281 4280 -0.0% 1.00x (?)
SubstringEqualString 6492 6583 +1.4% 0.99x
SubstringEquatable 8394 8424 +0.4% 1.00x (?)
SubstringFromLongString 17 17 +0.0% 1.00x
SubstringFromLongStringGeneric 111 112 +0.9% 0.99x (?)
SuffixAnyCollection 7081 6985 -1.4% 1.01x
SuffixAnyCollectionLazy 48367 46883 -3.1% 1.03x
SuffixAnySeqCRangeIter 45267 45479 +0.5% 1.00x
SuffixAnySeqCRangeIterLazy 45073 45229 +0.3% 1.00x
SuffixAnySeqCntRange 7031 6975 -0.8% 1.01x
SuffixAnySeqCntRangeLazy 6973 7000 +0.4% 1.00x
SuffixAnySequence 31232 31350 +0.4% 1.00x
SuffixAnySequenceLazy 31104 31173 +0.2% 1.00x
SuffixArray 2139 2093 -2.2% 1.02x
SuffixArrayLazy 14959 14966 +0.0% 1.00x (?)
SuffixCountableRange 119 119 +0.0% 1.00x
SuffixCountableRangeLazy 13601 13632 +0.2% 1.00x (?)
SuffixSequence 30792 30743 -0.2% 1.00x (?)
SuffixSequenceLazy 30781 30676 -0.3% 1.00x (?)
SumUsingReduce 229894 232362 +1.1% 0.99x
SumUsingReduceInto 225523 225841 +0.1% 1.00x
SuperChars 192325 191907 -0.2% 1.00x (?)
TwoSum 4310 4303 -0.2% 1.00x (?)
UTF8Decode 38206 38939 +1.9% 0.98x
Walsh 12116 12037 -0.7% 1.01x
accessGlobal 173 174 +0.6% 0.99x
accessInMatSet 305 303 -0.7% 1.01x
accessIndependent 127 124 -2.4% 1.02x
Added (4)
TEST MIN MAX MEAN MAX_RSS
ArraySetElement 4609 4610 4610 3787435
ExclusivityGlobal 174 175 174 3745109
ExclusivityInMatSet 303 315 307 3749205
ExclusivityIndependent 124 124 124 3743744
Hardware Overview
  Model Name: Mac mini
  Model Identifier: Macmini7,1
  Processor Name: Intel Core i5
  Processor Speed: 2.8 GHz
  Number of Processors: 1
  Total Number of Cores: 2
  L2 Cache (per Core): 256 KB
  L3 Cache: 3 MB
  Memory: 16 GB

@atrick
Copy link
Contributor

atrick commented Oct 3, 2017

Awesome! Thanks.

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

⚠️ Massive commit warning
I moved all the benchmarks to using BenchmarkInfo.
/cc @atrick, @shajrawi again

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

@swift-ci Please smoke test

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

@swift-ci Please smoke benchmark

Copy link

@shajrawi shajrawi left a comment

Choose a reason for hiding this comment

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

LGTM!

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

Hopefully the list of executed benchmarks will be the same ;-)

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

@swift-ci Please smoke test Linux platform

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

@swift-ci Please smoke benchmark

Copy link
Contributor

@gottesmm gottesmm left a comment

Choose a reason for hiding this comment

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

Quick drive by comments.

@@ -65,6 +65,9 @@ public enum BenchmarkCategory : String {
// reimplementing or call into code paths that have known opportunities for
// significant optimization.
case cpubench

// Explict skip marker
Copy link
Contributor

Choose a reason for hiding this comment

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

Explict => Explicit.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Darn, I will have to rerun the tests =(

//
// --skip-tags=array,set
//
// FIXME: If we used Error instead of .fail, then we could have a cleaner
Copy link
Contributor

Choose a reason for hiding this comment

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

I am fine if you want to use Error here. Really we just need a better argument parsing framework. I have one that is partially finished if you want to look at it. Or maybe once we have swiftpm we can just take one from a package.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I copied that comment from a block above. Did not really pay much attention to what it says. But yeah, a general purpose arg parsing lib would be nice in many places.

@@ -107,9 +107,12 @@ struct TestConfig {
/// The filters applied to our test names.
var filters = [String]()

/// The tag that we want to run
/// The tags that we want to run
Copy link
Contributor

Choose a reason for hiding this comment

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

Btw, one other thing that we could do to make this code even better is to use an OptionSet instead of a plain Set. I just forgot to make this change.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah. but for that the BenchmarkCategory would have to become backed by an Int, and I think there is some reliance on them being Strings.

@swift-ci
Copy link
Contributor

swift-ci commented Oct 4, 2017

Build comment file:

Optimized (O)

Regression (9)
TEST OLD NEW DELTA SPEEDUP
Sim2DArray 349 450 +28.9% 0.78x
DropFirstArray 30 36 +20.0% 0.83x
PopFrontUnsafePointer 5092 6095 +19.7% 0.84x (?)
PopFrontArray 1084 1278 +17.9% 0.85x
PopFrontArrayGeneric 1095 1278 +16.7% 0.86x
Integrate 249 266 +6.8% 0.94x
ObserverUnappliedMethod 2675 2853 +6.7% 0.94x
ObjectiveCBridgeStubFromNSStringRef 140 149 +6.4% 0.94x
ObjectiveCBridgeStubToNSStringRef 109 116 +6.4% 0.94x
Improvement (13)
TEST OLD NEW DELTA SPEEDUP
Calculator 38 31 -18.4% 1.23x
SetUnion 2790 2539 -9.0% 1.10x
StringEqualPointerComparison 394 363 -7.9% 1.09x
SortSortedStrings 920 850 -7.6% 1.08x
Histogram 298 276 -7.4% 1.08x
ArrayAppendLazyMap 989 922 -6.8% 1.07x
NopDeinit 22889 21388 -6.6% 1.07x
PrefixWhileSequence 356 334 -6.2% 1.07x
DictionarySwap 443 418 -5.6% 1.06x
DropFirstCountableRange 19 18 -5.3% 1.06x
PrefixWhileCountableRangeLazy 19 18 -5.3% 1.06x
Phonebook 6247 5932 -5.0% 1.05x
NSDictionaryCastToSwift 5564 5297 -4.8% 1.05x
No Changes (304)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 2971 2932 -1.3% 1.01x
AnyHashableWithAClass 67333 67562 +0.3% 1.00x
Array2D 1984 1943 -2.1% 1.02x (?)
ArrayAppend 1075 1080 +0.5% 1.00x (?)
ArrayAppendArrayOfInt 597 599 +0.3% 1.00x
ArrayAppendAscii 19501 19131 -1.9% 1.02x
ArrayAppendFromGeneric 597 599 +0.3% 1.00x
ArrayAppendGenericStructs 1255 1234 -1.7% 1.02x
ArrayAppendLatin1 45852 44309 -3.4% 1.03x (?)
ArrayAppendOptionals 1238 1227 -0.9% 1.01x (?)
ArrayAppendRepeatCol 999 999 +0.0% 1.00x
ArrayAppendReserved 844 849 +0.6% 0.99x
ArrayAppendSequence 913 912 -0.1% 1.00x (?)
ArrayAppendStrings 15058 15117 +0.4% 1.00x
ArrayAppendToFromGeneric 597 598 +0.2% 1.00x
ArrayAppendToGeneric 597 599 +0.3% 1.00x (?)
ArrayAppendUTF16 40359 40245 -0.3% 1.00x (?)
ArrayInClass 62 61 -1.6% 1.02x
ArrayLiteral 0 0 +0.0% 1.00x
ArrayOfGenericPOD 230 230 +0.0% 1.00x
ArrayOfGenericRef 3983 3996 +0.3% 1.00x (?)
ArrayOfPOD 177 176 -0.6% 1.01x (?)
ArrayOfRef 3906 3922 +0.4% 1.00x (?)
ArrayPlusEqualArrayOfInt 597 598 +0.2% 1.00x
ArrayPlusEqualFiveElementCollection 4792 4794 +0.0% 1.00x (?)
ArrayPlusEqualSingleElementCollection 1078 1080 +0.2% 1.00x
ArrayPlusEqualThreeElements 1642 1638 -0.2% 1.00x (?)
ArraySubscript 1488 1482 -0.4% 1.00x (?)
ArrayValueProp 6 6 +0.0% 1.00x
ArrayValueProp2 6 6 +0.0% 1.00x
ArrayValueProp3 6 6 +0.0% 1.00x
ArrayValueProp4 6 6 +0.0% 1.00x
BitCount 133 134 +0.8% 0.99x (?)
ByteSwap 115 114 -0.9% 1.01x
CStringLongAscii 4535 4692 +3.5% 0.97x
CStringLongNonAscii 2180 2191 +0.5% 0.99x
CStringShortAscii 4768 4801 +0.7% 0.99x
CaptureProp 4561 4600 +0.9% 0.99x
CharIndexing_ascii_unicodeScalars 13638 13830 +1.4% 0.99x
CharIndexing_ascii_unicodeScalars_Backwards 11258 11053 -1.8% 1.02x
CharIndexing_chinese_unicodeScalars 10329 10485 +1.5% 0.99x
CharIndexing_chinese_unicodeScalars_Backwards 8543 8386 -1.8% 1.02x
CharIndexing_japanese_unicodeScalars 16312 16555 +1.5% 0.99x
CharIndexing_japanese_unicodeScalars_Backwards 13468 13224 -1.8% 1.02x
CharIndexing_korean_unicodeScalars 13209 13405 +1.5% 0.99x
CharIndexing_korean_unicodeScalars_Backwards 10927 10732 -1.8% 1.02x
CharIndexing_punctuatedJapanese_unicodeScalars 2493 2532 +1.6% 0.98x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 2095 2053 -2.0% 1.02x
CharIndexing_punctuated_unicodeScalars 3119 3161 +1.3% 0.99x
CharIndexing_punctuated_unicodeScalars_Backwards 2605 2554 -2.0% 1.02x
CharIndexing_russian_unicodeScalars 11358 11528 +1.5% 0.99x
CharIndexing_russian_unicodeScalars_Backwards 9393 9222 -1.8% 1.02x
CharIndexing_tweet_unicodeScalars 26866 27258 +1.5% 0.99x
CharIndexing_tweet_unicodeScalars_Backwards 22186 21812 -1.7% 1.02x
CharIndexing_utf16_unicodeScalars 81442 81169 -0.3% 1.00x
CharIndexing_utf16_unicodeScalars_Backwards 60440 60420 -0.0% 1.00x (?)
CharIteration_ascii_unicodeScalars 15414 15828 +2.7% 0.97x
CharIteration_ascii_unicodeScalars_Backwards 16179 16368 +1.2% 0.99x
CharIteration_chinese_unicodeScalars 11679 11989 +2.7% 0.97x
CharIteration_chinese_unicodeScalars_Backwards 12248 12391 +1.2% 0.99x
CharIteration_japanese_unicodeScalars 18447 18933 +2.6% 0.97x
CharIteration_japanese_unicodeScalars_Backwards 19372 19599 +1.2% 0.99x
CharIteration_korean_unicodeScalars 14946 15343 +2.7% 0.97x
CharIteration_korean_unicodeScalars_Backwards 15688 15872 +1.2% 0.99x (?)
CharIteration_punctuatedJapanese_unicodeScalars 2809 2874 +2.3% 0.98x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 2920 2949 +1.0% 0.99x
CharIteration_punctuated_unicodeScalars 3509 3586 +2.2% 0.98x
CharIteration_punctuated_unicodeScalars_Backwards 3657 3695 +1.0% 0.99x
CharIteration_russian_unicodeScalars 12840 13185 +2.7% 0.97x
CharIteration_russian_unicodeScalars_Backwards 13478 13634 +1.2% 0.99x
CharIteration_tweet_unicodeScalars 30361 31176 +2.7% 0.97x
CharIteration_tweet_unicodeScalars_Backwards 31976 32372 +1.2% 0.99x
CharIteration_utf16_unicodeScalars 78492 78623 +0.2% 1.00x
CharIteration_utf16_unicodeScalars_Backwards 97342 97523 +0.2% 1.00x
CharacterLiteralsLarge 5947 5964 +0.3% 1.00x (?)
CharacterLiteralsSmall 402 414 +3.0% 0.97x
Chars 431 429 -0.5% 1.00x (?)
ClassArrayGetter 13 13 +0.0% 1.00x
DeadArray 183 184 +0.5% 0.99x (?)
Dictionary 563 577 +2.5% 0.98x
Dictionary2 1884 1889 +0.3% 1.00x
Dictionary2OfObjects 3285 3302 +0.5% 0.99x
Dictionary3 472 470 -0.4% 1.00x (?)
Dictionary3OfObjects 842 840 -0.2% 1.00x
DictionaryBridge 2575 2587 +0.5% 1.00x (?)
DictionaryGroup 278 273 -1.8% 1.02x
DictionaryGroupOfObjects 1797 1803 +0.3% 1.00x (?)
DictionaryLiteral 1494 1506 +0.8% 0.99x
DictionaryOfObjects 2266 2286 +0.9% 0.99x (?)
DictionaryRemove 2520 2508 -0.5% 1.00x (?)
DictionaryRemoveOfObjects 24000 23893 -0.4% 1.00x (?)
DictionarySwapOfObjects 7426 7388 -0.5% 1.01x (?)
DropFirstAnyCollection 55 55 +0.0% 1.00x
DropFirstAnyCollectionLazy 75351 75353 +0.0% 1.00x (?)
DropFirstAnySeqCRangeIter 28006 27855 -0.5% 1.01x
DropFirstAnySeqCRangeIterLazy 28033 27851 -0.6% 1.01x
DropFirstAnySeqCntRange 50 50 +0.0% 1.00x
DropFirstAnySeqCntRangeLazy 50 50 +0.0% 1.00x
DropFirstAnySequence 6214 6502 +4.6% 0.96x
DropFirstAnySequenceLazy 6220 6478 +4.1% 0.96x
DropFirstArrayLazy 30 30 +0.0% 1.00x
DropFirstCountableRangeLazy 18 18 +0.0% 1.00x
DropFirstSequence 2019 2019 +0.0% 1.00x
DropFirstSequenceLazy 1945 1945 +0.0% 1.00x
DropLastAnyCollection 21 21 +0.0% 1.00x
DropLastAnyCollectionLazy 25062 25212 +0.6% 0.99x (?)
DropLastAnySeqCRangeIter 4705 4704 -0.0% 1.00x
DropLastAnySeqCRangeIterLazy 4705 4704 -0.0% 1.00x
DropLastAnySeqCntRange 16 16 +0.0% 1.00x
DropLastAnySeqCntRangeLazy 16 16 +0.0% 1.00x
DropLastAnySequence 6711 6715 +0.1% 1.00x
DropLastAnySequenceLazy 6650 6664 +0.2% 1.00x
DropLastArray 10 10 +0.0% 1.00x
DropLastArrayLazy 10 10 +0.0% 1.00x
DropLastCountableRange 6 6 +0.0% 1.00x
DropLastCountableRangeLazy 6 6 +0.0% 1.00x
DropLastSequence 595 599 +0.7% 0.99x (?)
DropLastSequenceLazy 604 594 -1.7% 1.02x
DropWhileAnyCollection 68 68 +0.0% 1.00x
DropWhileAnyCollectionLazy 89 89 +0.0% 1.00x
DropWhileAnySeqCRangeIter 22720 22533 -0.8% 1.01x (?)
DropWhileAnySeqCRangeIterLazy 90 90 +0.0% 1.00x
DropWhileAnySeqCntRange 63 63 +0.0% 1.00x
DropWhileAnySeqCntRangeLazy 90 90 +0.0% 1.00x
DropWhileAnySequence 7282 7272 -0.1% 1.00x (?)
DropWhileAnySequenceLazy 1933 1933 +0.0% 1.00x
DropWhileArray 43 43 +0.0% 1.00x
DropWhileArrayLazy 82 82 +0.0% 1.00x
DropWhileCountableRange 19 19 +0.0% 1.00x
DropWhileCountableRangeLazy 70 70 +0.0% 1.00x
DropWhileSequence 1623 1624 +0.1% 1.00x
DropWhileSequenceLazy 47 47 +0.0% 1.00x
EqualStringSubstring 387 387 +0.0% 1.00x
EqualSubstringString 387 385 -0.5% 1.01x
EqualSubstringSubstring 387 388 +0.3% 1.00x
EqualSubstringSubstringGenericEquatable 389 390 +0.3% 1.00x (?)
ErrorHandling 2085 2069 -0.8% 1.01x
FilterEvenUsingReduce 1303 1297 -0.5% 1.00x (?)
FilterEvenUsingReduceInto 147 145 -1.4% 1.01x
FrequenciesUsingReduce 7378 7443 +0.9% 0.99x (?)
FrequenciesUsingReduceInto 4150 4164 +0.3% 1.00x (?)
Hanoi 3615 3467 -4.1% 1.04x
HashTest 1638 1636 -0.1% 1.00x (?)
IterateData 1372 1364 -0.6% 1.01x
Join 385 388 +0.8% 0.99x
LazilyFilteredArrays 65712 65785 +0.1% 1.00x (?)
LazilyFilteredRange 3617 3623 +0.2% 1.00x
LessSubstringSubstring 388 388 +0.0% 1.00x
LessSubstringSubstringGenericComparable 387 387 +0.0% 1.00x
LinkedList 6957 6916 -0.6% 1.01x
MapReduce 363 362 -0.3% 1.00x
MapReduceAnyCollection 362 362 +0.0% 1.00x
MapReduceAnyCollectionShort 2100 2104 +0.2% 1.00x (?)
MapReduceClass 3063 3069 +0.2% 1.00x (?)
MapReduceClassShort 4549 4550 +0.0% 1.00x
MapReduceLazyCollection 13 13 +0.0% 1.00x
MapReduceLazyCollectionShort 36 36 +0.0% 1.00x
MapReduceLazySequence 90 90 +0.0% 1.00x
MapReduceSequence 440 439 -0.2% 1.00x (?)
MapReduceShort 1986 1987 +0.1% 1.00x (?)
MapReduceShortString 21 21 +0.0% 1.00x
MapReduceString 104 100 -3.8% 1.04x
Memset 235 234 -0.4% 1.00x (?)
MonteCarloE 10349 10358 +0.1% 1.00x
MonteCarloPi 43930 44002 +0.2% 1.00x (?)
NSError 306 311 +1.6% 0.98x (?)
NSStringConversion 371 363 -2.2% 1.02x
ObjectAllocation 179 180 +0.6% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObject 22888 23006 +0.5% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 3481 3476 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 39685 40187 +1.3% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 34056 33664 -1.2% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 123542 124231 +0.6% 0.99x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectForced 5100 5174 +1.5% 0.99x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToString 93050 90898 -2.3% 1.02x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToStringForced 97777 97841 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObject 65277 65322 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectForced 4236 4260 +0.6% 0.99x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 67152 68024 +1.3% 0.99x (?)
ObjectiveCBridgeFromNSSetAnyObjectToStringForced 68218 68309 +0.1% 1.00x (?)
ObjectiveCBridgeFromNSString 988 987 -0.1% 1.00x (?)
ObjectiveCBridgeFromNSStringForced 1866 1855 -0.6% 1.01x
ObjectiveCBridgeStubDataAppend 3918 3893 -0.6% 1.01x (?)
ObjectiveCBridgeStubDateAccess 181 182 +0.6% 0.99x
ObjectiveCBridgeStubDateMutation 272 272 +0.0% 1.00x
ObjectiveCBridgeStubFromArrayOfNSString 25665 25468 -0.8% 1.01x
ObjectiveCBridgeStubFromNSDate 3564 3627 +1.8% 0.98x
ObjectiveCBridgeStubFromNSDateRef 4019 4098 +2.0% 0.98x
ObjectiveCBridgeStubFromNSString 545 556 +2.0% 0.98x
ObjectiveCBridgeStubNSDataAppend 2392 2451 +2.5% 0.98x (?)
ObjectiveCBridgeStubNSDateMutationRef 12455 12548 +0.7% 0.99x (?)
ObjectiveCBridgeStubNSDateRefAccess 319 313 -1.9% 1.02x
ObjectiveCBridgeStubToArrayOfNSString 29289 28812 -1.6% 1.02x (?)
ObjectiveCBridgeStubToNSDate 15223 14893 -2.2% 1.02x (?)
ObjectiveCBridgeStubToNSDateRef 3296 3328 +1.0% 0.99x (?)
ObjectiveCBridgeStubToNSString 1508 1495 -0.9% 1.01x
ObjectiveCBridgeStubURLAppendPath 220015 223230 +1.5% 0.99x (?)
ObjectiveCBridgeStubURLAppendPathRef 222149 222731 +0.3% 1.00x (?)
ObjectiveCBridgeToNSArray 29496 29225 -0.9% 1.01x
ObjectiveCBridgeToNSDictionary 45623 45648 +0.1% 1.00x (?)
ObjectiveCBridgeToNSSet 39165 39425 +0.7% 0.99x (?)
ObjectiveCBridgeToNSString 1272 1270 -0.2% 1.00x (?)
ObserverClosure 2319 2315 -0.2% 1.00x
ObserverForwarderStruct 1136 1139 +0.3% 1.00x (?)
ObserverPartiallyAppliedMethod 3776 3809 +0.9% 0.99x (?)
OpenClose 3 3 +0.0% 1.00x
PolymorphicCalls 17 17 +0.0% 1.00x
PrefixAnyCollection 53 55 +3.8% 0.96x
PrefixAnyCollectionLazy 75295 75545 +0.3% 1.00x (?)
PrefixAnySeqCRangeIter 22026 21993 -0.1% 1.00x (?)
PrefixAnySeqCRangeIterLazy 22016 22000 -0.1% 1.00x (?)
PrefixAnySeqCntRange 50 50 +0.0% 1.00x
PrefixAnySeqCntRangeLazy 50 50 +0.0% 1.00x
PrefixAnySequence 5427 5490 +1.2% 0.99x
PrefixAnySequenceLazy 5419 5693 +5.1% 0.95x
PrefixArray 30 30 +0.0% 1.00x
PrefixArrayLazy 30 30 +0.0% 1.00x
PrefixCountableRange 18 18 +0.0% 1.00x
PrefixCountableRangeLazy 18 18 +0.0% 1.00x
PrefixSequence 1516 1515 -0.1% 1.00x
PrefixSequenceLazy 1460 1460 +0.0% 1.00x
PrefixWhileAnyCollection 93 93 +0.0% 1.00x
PrefixWhileAnyCollectionLazy 66 66 +0.0% 1.00x
PrefixWhileAnySeqCRangeIter 12851 12855 +0.0% 1.00x (?)
PrefixWhileAnySeqCRangeIterLazy 66 66 +0.0% 1.00x
PrefixWhileAnySeqCntRange 88 88 +0.0% 1.00x
PrefixWhileAnySeqCntRangeLazy 66 66 +0.0% 1.00x
PrefixWhileAnySequence 14302 14302 +0.0% 1.00x
PrefixWhileAnySequenceLazy 1436 1436 +0.0% 1.00x
PrefixWhileArray 68 68 +0.0% 1.00x
PrefixWhileArrayLazy 37 37 +0.0% 1.00x
PrefixWhileCountableRange 29 29 +0.0% 1.00x
PrefixWhileSequenceLazy 28 28 +0.0% 1.00x
Prims 763 757 -0.8% 1.01x
PrimsSplit 759 753 -0.8% 1.01x
ProtocolDispatch 3031 3103 +2.4% 0.98x
ProtocolDispatch2 170 171 +0.6% 0.99x
RC4 158 158 +0.0% 1.00x
RGBHistogram 2152 2199 +2.2% 0.98x
RGBHistogramOfObjects 23327 23358 +0.1% 1.00x (?)
RangeAssignment 360 363 +0.8% 0.99x
RecursiveOwnedParameter 2307 2309 +0.1% 1.00x
ReversedArray 46 45 -2.2% 1.02x
ReversedBidirectional 29567 29128 -1.5% 1.02x
ReversedDictionary 107 107 +0.0% 1.00x
SetExclusiveOr 2889 2852 -1.3% 1.01x
SetExclusiveOr_OfObjects 8360 8394 +0.4% 1.00x (?)
SetIntersect 269 272 +1.1% 0.99x
SetIntersect_OfObjects 1716 1718 +0.1% 1.00x (?)
SetIsSubsetOf 294 294 +0.0% 1.00x
SetIsSubsetOf_OfObjects 366 366 +0.0% 1.00x
SetUnion_OfObjects 6971 6944 -0.4% 1.00x (?)
SevenBoom 1579 1635 +3.5% 0.97x (?)
SortLargeExistentials 8435 8325 -1.3% 1.01x
SortLettersInPlace 1144 1146 +0.2% 1.00x (?)
SortStrings 1715 1634 -4.7% 1.05x
SortStringsUnicode 7867 7792 -1.0% 1.01x
StackPromo 22730 22620 -0.5% 1.00x
StaticArray 5 5 +0.0% 1.00x
StrComplexWalk 1590 1652 +3.9% 0.96x
StrToInt 1913 1842 -3.7% 1.04x
StringAdder 3518 3482 -1.0% 1.01x
StringBuilder 1004 1003 -0.1% 1.00x (?)
StringBuilderLong 913 939 +2.8% 0.97x
StringEdits 137232 137365 +0.1% 1.00x (?)
StringEnumRawValueInitialization 791 790 -0.1% 1.00x
StringFromLongWholeSubstring 178 177 -0.6% 1.01x
StringFromLongWholeSubstringGeneric 23 23 +0.0% 1.00x
StringHasPrefix 9 9 +0.0% 1.00x
StringHasPrefixUnicode 14427 14511 +0.6% 0.99x
StringHasSuffix 9 9 +0.0% 1.00x
StringHasSuffixUnicode 61289 61279 -0.0% 1.00x (?)
StringInterpolation 11117 10860 -2.3% 1.02x (?)
StringMatch 7543 7317 -3.0% 1.03x
StringUTF16Builder 1901 1888 -0.7% 1.01x
StringWalk 1499 1465 -2.3% 1.02x
StringWithCString 59706 60902 +2.0% 0.98x
SubstringComparable 1598 1588 -0.6% 1.01x
SubstringEqualString 1426 1428 +0.1% 1.00x
SubstringEquatable 3686 3687 +0.0% 1.00x (?)
SubstringFromLongString 10 10 +0.0% 1.00x
SubstringFromLongStringGeneric 62 62 +0.0% 1.00x
SuffixAnyCollection 21 21 +0.0% 1.00x
SuffixAnyCollectionLazy 25082 25286 +0.8% 0.99x
SuffixAnySeqCRangeIter 5034 5039 +0.1% 1.00x
SuffixAnySeqCRangeIterLazy 5032 5060 +0.6% 0.99x
SuffixAnySeqCntRange 16 16 +0.0% 1.00x
SuffixAnySeqCntRangeLazy 16 16 +0.0% 1.00x
SuffixAnySequence 6697 6715 +0.3% 1.00x
SuffixAnySequenceLazy 6715 6716 +0.0% 1.00x (?)
SuffixArray 10 10 +0.0% 1.00x
SuffixArrayLazy 10 10 +0.0% 1.00x
SuffixCountableRange 6 6 +0.0% 1.00x
SuffixCountableRangeLazy 6 6 +0.0% 1.00x
SuffixSequence 4667 4678 +0.2% 1.00x
SuffixSequenceLazy 4668 4685 +0.4% 1.00x
SumUsingReduce 97 97 +0.0% 1.00x
SumUsingReduceInto 97 97 +0.0% 1.00x
SuperChars 84826 84703 -0.1% 1.00x (?)
TwoSum 942 936 -0.6% 1.01x
TypeFlood 0 0 +0.0% 1.00x
UTF8Decode 254 257 +1.2% 0.99x
Walsh 403 401 -0.5% 1.00x
XorLoop 347 347 +0.0% 1.00x
Added (4)
TEST MIN MAX MEAN MAX_RSS
ArraySetElement 473 481 477 3969024
ExclusivityGlobal 3 3 3 3956736
ExclusivityInMatSet 18 18 18 3960832
ExclusivityIndependent 2 2 2 3956736
Removed (3)
TEST MIN MAX MEAN MAX_RSS
accessGlobal 3 3 3 3588096
accessInMatSet 18 18 18 3592192
accessIndependent 2 2 2 3592192

Unoptimized (Onone)

Regression (4)
TEST OLD NEW DELTA SPEEDUP
PopFrontUnsafePointer 6675 7641 +14.5% 0.87x
UTF8Decode 38143 40588 +6.4% 0.94x
ObjectiveCBridgeFromNSSetAnyObjectForced 7606 8078 +6.2% 0.94x
CharIndexing_japanese_unicodeScalars 558715 589422 +5.5% 0.95x
Improvement (9)
TEST OLD NEW DELTA SPEEDUP
XorLoop 27966 23559 -15.8% 1.19x
ProtocolDispatch 8183 7606 -7.1% 1.08x
CaptureProp 131615 124002 -5.8% 1.06x
DropFirstArrayLazy 46810 44195 -5.6% 1.06x
SuffixArrayLazy 15602 14742 -5.5% 1.06x
PrefixArrayLazy 46767 44193 -5.5% 1.06x
DropLastArrayLazy 15603 14750 -5.5% 1.06x
ArrayInClass 6667 6312 -5.3% 1.06x
ObjectiveCBridgeStubDateMutation 530 503 -5.1% 1.05x
No Changes (313)
TEST OLD NEW DELTA SPEEDUP
AngryPhonebook 4958 4950 -0.2% 1.00x (?)
AnyHashableWithAClass 85848 85839 -0.0% 1.00x (?)
Array2D 635371 635714 +0.1% 1.00x
ArrayAppend 3908 4027 +3.0% 0.97x
ArrayAppendArrayOfInt 653 656 +0.5% 1.00x
ArrayAppendAscii 54179 54233 +0.1% 1.00x
ArrayAppendFromGeneric 656 659 +0.5% 1.00x
ArrayAppendGenericStructs 1361 1310 -3.7% 1.04x
ArrayAppendLatin1 77413 77610 +0.3% 1.00x (?)
ArrayAppendLazyMap 228133 228450 +0.1% 1.00x
ArrayAppendOptionals 1355 1299 -4.1% 1.04x
ArrayAppendRepeatCol 231962 240812 +3.8% 0.96x
ArrayAppendReserved 3971 3899 -1.8% 1.02x
ArrayAppendSequence 76039 75775 -0.3% 1.00x
ArrayAppendStrings 15184 15207 +0.2% 1.00x (?)
ArrayAppendToFromGeneric 657 658 +0.2% 1.00x
ArrayAppendToGeneric 657 659 +0.3% 1.00x
ArrayAppendUTF16 77882 78141 +0.3% 1.00x (?)
ArrayLiteral 1764 1775 +0.6% 0.99x (?)
ArrayOfGenericPOD 1293 1296 +0.2% 1.00x
ArrayOfGenericRef 10038 10019 -0.2% 1.00x (?)
ArrayOfPOD 710 711 +0.1% 1.00x
ArrayOfRef 9207 9164 -0.5% 1.00x
ArrayPlusEqualArrayOfInt 655 657 +0.3% 1.00x
ArrayPlusEqualFiveElementCollection 307383 313290 +1.9% 0.98x (?)
ArrayPlusEqualSingleElementCollection 303720 307307 +1.2% 0.99x (?)
ArrayPlusEqualThreeElements 11179 11209 +0.3% 1.00x (?)
ArraySubscript 85188 86700 +1.8% 0.98x
ArrayValueProp 3631 3602 -0.8% 1.01x (?)
ArrayValueProp2 18869 19017 +0.8% 0.99x (?)
ArrayValueProp3 4069 4062 -0.2% 1.00x
ArrayValueProp4 4013 4021 +0.2% 1.00x (?)
BitCount 1682 1648 -2.0% 1.02x
ByteSwap 4126 4120 -0.1% 1.00x (?)
CStringLongAscii 4611 4637 +0.6% 0.99x (?)
CStringLongNonAscii 2399 2401 +0.1% 1.00x (?)
CStringShortAscii 8731 8720 -0.1% 1.00x (?)
Calculator 1115 1147 +2.9% 0.97x
CharIndexing_ascii_unicodeScalars 469202 473209 +0.9% 0.99x
CharIndexing_ascii_unicodeScalars_Backwards 506694 523678 +3.4% 0.97x
CharIndexing_chinese_unicodeScalars 351831 361976 +2.9% 0.97x
CharIndexing_chinese_unicodeScalars_Backwards 381857 392373 +2.8% 0.97x
CharIndexing_japanese_unicodeScalars_Backwards 607926 626026 +3.0% 0.97x
CharIndexing_korean_unicodeScalars 455759 466096 +2.3% 0.98x
CharIndexing_korean_unicodeScalars_Backwards 492231 499758 +1.5% 0.98x (?)
CharIndexing_punctuatedJapanese_unicodeScalars 80702 82952 +2.8% 0.97x
CharIndexing_punctuatedJapanese_unicodeScalars_Backwards 88339 89699 +1.5% 0.98x
CharIndexing_punctuated_unicodeScalars 103466 104116 +0.6% 0.99x (?)
CharIndexing_punctuated_unicodeScalars_Backwards 111056 112595 +1.4% 0.99x (?)
CharIndexing_russian_unicodeScalars 388316 394356 +1.6% 0.98x (?)
CharIndexing_russian_unicodeScalars_Backwards 422333 428759 +1.5% 0.99x
CharIndexing_tweet_unicodeScalars 922349 945223 +2.5% 0.98x
CharIndexing_tweet_unicodeScalars_Backwards 1008219 1026720 +1.8% 0.98x
CharIndexing_utf16_unicodeScalars 525051 530800 +1.1% 0.99x (?)
CharIndexing_utf16_unicodeScalars_Backwards 566277 571377 +0.9% 0.99x
CharIteration_ascii_unicodeScalars 185852 185203 -0.3% 1.00x (?)
CharIteration_ascii_unicodeScalars_Backwards 319647 329186 +3.0% 0.97x
CharIteration_chinese_unicodeScalars 139615 139556 -0.0% 1.00x (?)
CharIteration_chinese_unicodeScalars_Backwards 245960 247997 +0.8% 0.99x (?)
CharIteration_japanese_unicodeScalars 221562 220928 -0.3% 1.00x
CharIteration_japanese_unicodeScalars_Backwards 381805 399504 +4.6% 0.96x
CharIteration_korean_unicodeScalars 178448 179396 +0.5% 0.99x
CharIteration_korean_unicodeScalars_Backwards 308760 316916 +2.6% 0.97x
CharIteration_punctuatedJapanese_unicodeScalars 32761 32877 +0.4% 1.00x
CharIteration_punctuatedJapanese_unicodeScalars_Backwards 54986 57153 +3.9% 0.96x (?)
CharIteration_punctuated_unicodeScalars 41450 41393 -0.1% 1.00x (?)
CharIteration_punctuated_unicodeScalars_Backwards 70146 72107 +2.8% 0.97x
CharIteration_russian_unicodeScalars 154032 153269 -0.5% 1.00x
CharIteration_russian_unicodeScalars_Backwards 264952 272949 +3.0% 0.97x
CharIteration_tweet_unicodeScalars 364411 364899 +0.1% 1.00x
CharIteration_tweet_unicodeScalars_Backwards 628334 654909 +4.2% 0.96x
CharIteration_utf16_unicodeScalars 204781 203318 -0.7% 1.01x
CharIteration_utf16_unicodeScalars_Backwards 395075 399564 +1.1% 0.99x
CharacterLiteralsLarge 6181 6217 +0.6% 0.99x (?)
CharacterLiteralsSmall 682 690 +1.2% 0.99x
Chars 50422 51253 +1.6% 0.98x
ClassArrayGetter 1014 1012 -0.2% 1.00x
DeadArray 117279 113979 -2.8% 1.03x (?)
Dictionary 3020 3081 +2.0% 0.98x (?)
Dictionary2 3461 3485 +0.7% 0.99x
Dictionary2OfObjects 6075 6052 -0.4% 1.00x (?)
Dictionary3 1310 1331 +1.6% 0.98x
Dictionary3OfObjects 2287 2324 +1.6% 0.98x
DictionaryBridge 2665 2729 +2.4% 0.98x (?)
DictionaryGroup 5346 5367 +0.4% 1.00x
DictionaryGroupOfObjects 8206 8292 +1.0% 0.99x
DictionaryLiteral 8755 8582 -2.0% 1.02x (?)
DictionaryOfObjects 6557 6781 +3.4% 0.97x
DictionaryRemove 21462 21600 +0.6% 0.99x
DictionaryRemoveOfObjects 59197 60059 +1.5% 0.99x
DictionarySwap 5272 5436 +3.1% 0.97x
DictionarySwapOfObjects 23097 23335 +1.0% 0.99x
DropFirstAnyCollection 20169 20309 +0.7% 0.99x
DropFirstAnyCollectionLazy 143372 142357 -0.7% 1.01x (?)
DropFirstAnySeqCRangeIter 30729 30400 -1.1% 1.01x
DropFirstAnySeqCRangeIterLazy 30517 30780 +0.9% 0.99x
DropFirstAnySeqCntRange 20183 20365 +0.9% 0.99x
DropFirstAnySeqCntRangeLazy 20214 20132 -0.4% 1.00x
DropFirstAnySequence 15836 15933 +0.6% 0.99x (?)
DropFirstAnySequenceLazy 15787 15865 +0.5% 1.00x
DropFirstArray 6345 6251 -1.5% 1.02x
DropFirstCountableRange 340 340 +0.0% 1.00x
DropFirstCountableRangeLazy 40209 39638 -1.4% 1.01x
DropFirstSequence 14797 14936 +0.9% 0.99x
DropFirstSequenceLazy 14740 14635 -0.7% 1.01x
DropLastAnyCollection 6736 6791 +0.8% 0.99x (?)
DropLastAnyCollectionLazy 47223 47589 +0.8% 0.99x (?)
DropLastAnySeqCRangeIter 46648 46787 +0.3% 1.00x (?)
DropLastAnySeqCRangeIterLazy 46831 47385 +1.2% 0.99x
DropLastAnySeqCntRange 6750 6760 +0.1% 1.00x
DropLastAnySeqCntRangeLazy 6735 6737 +0.0% 1.00x (?)
DropLastAnySequence 33609 33614 +0.0% 1.00x (?)
DropLastAnySequenceLazy 33568 33748 +0.5% 0.99x
DropLastArray 2123 2096 -1.3% 1.01x
DropLastCountableRange 119 119 +0.0% 1.00x
DropLastCountableRangeLazy 13466 13248 -1.6% 1.02x
DropLastSequence 33218 33055 -0.5% 1.00x
DropLastSequenceLazy 33249 33337 +0.3% 1.00x
DropWhileAnyCollection 26234 26180 -0.2% 1.00x
DropWhileAnyCollectionLazy 28425 28432 +0.0% 1.00x (?)
DropWhileAnySeqCRangeIter 33026 32716 -0.9% 1.01x
DropWhileAnySeqCRangeIterLazy 28530 28514 -0.1% 1.00x
DropWhileAnySeqCntRange 26237 26518 +1.1% 0.99x
DropWhileAnySeqCntRangeLazy 28616 28629 +0.0% 1.00x (?)
DropWhileAnySequence 18723 18772 +0.3% 1.00x
DropWhileAnySequenceLazy 15050 15058 +0.1% 1.00x
DropWhileArray 9996 10087 +0.9% 0.99x
DropWhileArrayLazy 17343 17354 +0.1% 1.00x (?)
DropWhileCountableRange 6422 6540 +1.8% 0.98x
DropWhileCountableRangeLazy 27614 27576 -0.1% 1.00x
DropWhileSequence 17621 17512 -0.6% 1.01x
DropWhileSequenceLazy 13728 13515 -1.6% 1.02x
EqualStringSubstring 682 675 -1.0% 1.01x
EqualSubstringString 674 672 -0.3% 1.00x (?)
EqualSubstringSubstring 788 787 -0.1% 1.00x (?)
EqualSubstringSubstringGenericEquatable 419 419 +0.0% 1.00x
ErrorHandling 6780 6846 +1.0% 0.99x (?)
FilterEvenUsingReduce 4303 4368 +1.5% 0.99x
FilterEvenUsingReduceInto 2490 2491 +0.0% 1.00x (?)
FrequenciesUsingReduce 15916 15863 -0.3% 1.00x (?)
FrequenciesUsingReduceInto 8943 8771 -1.9% 1.02x (?)
Hanoi 19221 19258 +0.2% 1.00x (?)
HashTest 17089 17265 +1.0% 0.99x
Histogram 8858 9163 +3.4% 0.97x
Integrate 683 680 -0.4% 1.00x
IterateData 13520 13430 -0.7% 1.01x
Join 1500 1526 +1.7% 0.98x
LazilyFilteredArrays 1734604 1756780 +1.3% 0.99x
LazilyFilteredRange 719199 705669 -1.9% 1.02x
LessSubstringSubstring 792 793 +0.1% 1.00x (?)
LessSubstringSubstringGenericComparable 441 442 +0.2% 1.00x (?)
LinkedList 40357 40431 +0.2% 1.00x
MapReduce 38404 38526 +0.3% 1.00x
MapReduceAnyCollection 38506 38522 +0.0% 1.00x (?)
MapReduceAnyCollectionShort 51118 51426 +0.6% 0.99x (?)
MapReduceClass 43567 43828 +0.6% 0.99x
MapReduceClassShort 55054 54930 -0.2% 1.00x (?)
MapReduceLazyCollection 34610 34650 +0.1% 1.00x
MapReduceLazyCollectionShort 45841 46427 +1.3% 0.99x
MapReduceLazySequence 29797 29869 +0.2% 1.00x (?)
MapReduceSequence 44996 45060 +0.1% 1.00x
MapReduceShort 51084 51381 +0.6% 0.99x
MapReduceShortString 280 285 +1.8% 0.98x
MapReduceString 2675 2720 +1.7% 0.98x
Memset 45750 45190 -1.2% 1.01x
MonteCarloE 943106 944350 +0.1% 1.00x (?)
MonteCarloPi 4048447 4075994 +0.7% 0.99x (?)
NSDictionaryCastToSwift 6759 6493 -3.9% 1.04x (?)
NSError 750 756 +0.8% 0.99x (?)
NSStringConversion 410 399 -2.7% 1.03x
NopDeinit 174595 171548 -1.7% 1.02x
ObjectAllocation 1467 1474 +0.5% 1.00x (?)
ObjectiveCBridgeFromNSArrayAnyObject 25106 25302 +0.8% 0.99x (?)
ObjectiveCBridgeFromNSArrayAnyObjectForced 6802 6954 +2.2% 0.98x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToString 41403 40874 -1.3% 1.01x (?)
ObjectiveCBridgeFromNSArrayAnyObjectToStringForced 34831 35225 +1.1% 0.99x (?)
ObjectiveCBridgeFromNSDictionaryAnyObject 123212 123540 +0.3% 1.00x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectForced 7817 8062 +3.1% 0.97x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToString 98019 97019 -1.0% 1.01x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectToStringForced 105846 104838 -1.0% 1.01x (?)
ObjectiveCBridgeFromNSSetAnyObject 68542 68942 +0.6% 0.99x (?)
ObjectiveCBridgeFromNSSetAnyObjectToString 73206 72965 -0.3% 1.00x (?)
ObjectiveCBridgeFromNSSetAnyObjectToStringForced 73345 72808 -0.7% 1.01x (?)
ObjectiveCBridgeFromNSString 3965 3994 +0.7% 0.99x (?)
ObjectiveCBridgeFromNSStringForced 2240 2242 +0.1% 1.00x
ObjectiveCBridgeStubDataAppend 4401 4369 -0.7% 1.01x (?)
ObjectiveCBridgeStubDateAccess 1061 1052 -0.8% 1.01x
ObjectiveCBridgeStubFromArrayOfNSString 25375 25387 +0.0% 1.00x (?)
ObjectiveCBridgeStubFromNSDate 3868 3888 +0.5% 0.99x (?)
ObjectiveCBridgeStubFromNSDateRef 4497 4515 +0.4% 1.00x (?)
ObjectiveCBridgeStubFromNSString 618 590 -4.5% 1.05x
ObjectiveCBridgeStubFromNSStringRef 182 179 -1.6% 1.02x
ObjectiveCBridgeStubNSDataAppend 2878 2921 +1.5% 0.99x (?)
ObjectiveCBridgeStubNSDateMutationRef 15129 15319 +1.3% 0.99x (?)
ObjectiveCBridgeStubNSDateRefAccess 1216 1217 +0.1% 1.00x (?)
ObjectiveCBridgeStubToArrayOfNSString 29536 29825 +1.0% 0.99x
ObjectiveCBridgeStubToNSDate 15368 14854 -3.3% 1.03x (?)
ObjectiveCBridgeStubToNSDateRef 3330 3340 +0.3% 1.00x (?)
ObjectiveCBridgeStubToNSString 1556 1544 -0.8% 1.01x (?)
ObjectiveCBridgeStubToNSStringRef 155 149 -3.9% 1.04x
ObjectiveCBridgeStubURLAppendPath 225328 224026 -0.6% 1.01x (?)
ObjectiveCBridgeStubURLAppendPathRef 223585 226016 +1.1% 0.99x
ObjectiveCBridgeToNSArray 29551 29696 +0.5% 1.00x (?)
ObjectiveCBridgeToNSDictionary 45830 45990 +0.3% 1.00x (?)
ObjectiveCBridgeToNSSet 40721 39916 -2.0% 1.02x
ObjectiveCBridgeToNSString 1304 1319 +1.2% 0.99x
ObserverClosure 6932 6937 +0.1% 1.00x
ObserverForwarderStruct 5084 5087 +0.1% 1.00x (?)
ObserverPartiallyAppliedMethod 8394 8382 -0.1% 1.00x (?)
ObserverUnappliedMethod 8763 8779 +0.2% 1.00x
OpenClose 394 394 +0.0% 1.00x
Phonebook 21066 21505 +2.1% 0.98x
PolymorphicCalls 5235 5279 +0.8% 0.99x (?)
PopFrontArray 10255 10292 +0.4% 1.00x
PopFrontArrayGeneric 9186 9208 +0.2% 1.00x
PrefixAnyCollection 20164 20340 +0.9% 0.99x (?)
PrefixAnyCollectionLazy 141668 143873 +1.6% 0.98x
PrefixAnySeqCRangeIter 24415 24237 -0.7% 1.01x
PrefixAnySeqCRangeIterLazy 24325 24562 +1.0% 0.99x
PrefixAnySeqCntRange 20205 20352 +0.7% 0.99x (?)
PrefixAnySeqCntRangeLazy 20520 20302 -1.1% 1.01x (?)
PrefixAnySequence 12877 13054 +1.4% 0.99x
PrefixAnySequenceLazy 12975 12893 -0.6% 1.01x (?)
PrefixArray 6347 6244 -1.6% 1.02x
PrefixCountableRange 340 340 +0.0% 1.00x
PrefixCountableRangeLazy 40181 39765 -1.0% 1.01x (?)
PrefixSequence 11832 11964 +1.1% 0.99x (?)
PrefixSequenceLazy 11853 11825 -0.2% 1.00x
PrefixWhileAnyCollection 38486 38477 -0.0% 1.00x (?)
PrefixWhileAnyCollectionLazy 23492 23404 -0.4% 1.00x
PrefixWhileAnySeqCRangeIter 43082 43395 +0.7% 0.99x (?)
PrefixWhileAnySeqCRangeIterLazy 23496 23667 +0.7% 0.99x
PrefixWhileAnySeqCntRange 38473 38871 +1.0% 0.99x (?)
PrefixWhileAnySeqCntRangeLazy 23581 23535 -0.2% 1.00x
PrefixWhileAnySequence 32756 32887 +0.4% 1.00x
PrefixWhileAnySequenceLazy 13340 13313 -0.2% 1.00x (?)
PrefixWhileArray 17319 17416 +0.6% 0.99x (?)
PrefixWhileArrayLazy 15235 15237 +0.0% 1.00x (?)
PrefixWhileCountableRange 18566 18953 +2.1% 0.98x
PrefixWhileCountableRangeLazy 22970 22897 -0.3% 1.00x (?)
PrefixWhileSequence 31613 31815 +0.6% 0.99x (?)
PrefixWhileSequenceLazy 12520 12283 -1.9% 1.02x (?)
Prims 10497 10576 +0.8% 0.99x
PrimsSplit 10606 10616 +0.1% 1.00x (?)
ProtocolDispatch2 500 500 +0.0% 1.00x
RC4 18425 18566 +0.8% 0.99x
RGBHistogram 33823 34294 +1.4% 0.99x
RGBHistogramOfObjects 105456 106134 +0.6% 0.99x (?)
RangeAssignment 5741 5745 +0.1% 1.00x (?)
RecursiveOwnedParameter 11015 11064 +0.4% 1.00x
ReversedArray 43200 43295 +0.2% 1.00x (?)
ReversedBidirectional 75630 75949 +0.4% 1.00x (?)
ReversedDictionary 29538 29425 -0.4% 1.00x (?)
SetExclusiveOr 23006 23071 +0.3% 1.00x (?)
SetExclusiveOr_OfObjects 48231 48605 +0.8% 0.99x
SetIntersect 12596 12640 +0.3% 1.00x (?)
SetIntersect_OfObjects 12423 12764 +2.7% 0.97x (?)
SetIsSubsetOf 1884 1888 +0.2% 1.00x
SetIsSubsetOf_OfObjects 1548 1553 +0.3% 1.00x
SetUnion 12089 11966 -1.0% 1.01x (?)
SetUnion_OfObjects 33794 33963 +0.5% 1.00x
SevenBoom 1771 1794 +1.3% 0.99x (?)
Sim2DArray 44087 44093 +0.0% 1.00x
SortLargeExistentials 17495 17476 -0.1% 1.00x
SortLettersInPlace 3045 3077 +1.1% 0.99x (?)
SortSortedStrings 1448 1451 +0.2% 1.00x
SortStrings 2608 2640 +1.2% 0.99x
SortStringsUnicode 9081 9085 +0.0% 1.00x (?)
StackPromo 102479 101507 -0.9% 1.01x (?)
StaticArray 4576 4643 +1.5% 0.99x
StrComplexWalk 6968 6978 +0.1% 1.00x (?)
StrToInt 125769 127384 +1.3% 0.99x
StringAdder 3844 3781 -1.6% 1.02x
StringBuilder 7119 7163 +0.6% 0.99x (?)
StringBuilderLong 1104 1122 +1.6% 0.98x
StringEdits 382240 381495 -0.2% 1.00x (?)
StringEnumRawValueInitialization 12860 12749 -0.9% 1.01x
StringEqualPointerComparison 2595 2595 +0.0% 1.00x
StringFromLongWholeSubstring 217 211 -2.8% 1.03x
StringFromLongWholeSubstringGeneric 214 212 -0.9% 1.01x
StringHasPrefix 1849 1776 -3.9% 1.04x
StringHasPrefixUnicode 16129 16006 -0.8% 1.01x
StringHasSuffix 1878 1835 -2.3% 1.02x
StringHasSuffixUnicode 63137 63247 +0.2% 1.00x (?)
StringInterpolation 13720 13831 +0.8% 0.99x
StringMatch 34560 34714 +0.4% 1.00x
StringUTF16Builder 7956 7985 +0.4% 1.00x (?)
StringWalk 12224 12038 -1.5% 1.02x
StringWithCString 55017 55111 +0.2% 1.00x (?)
SubstringComparable 4348 4365 +0.4% 1.00x
SubstringEqualString 6525 6666 +2.2% 0.98x (?)
SubstringEquatable 8386 8421 +0.4% 1.00x
SubstringFromLongString 17 17 +0.0% 1.00x
SubstringFromLongStringGeneric 115 112 -2.6% 1.03x
SuffixAnyCollection 6739 6800 +0.9% 0.99x
SuffixAnyCollectionLazy 47730 47057 -1.4% 1.01x (?)
SuffixAnySeqCRangeIter 44084 44595 +1.2% 0.99x
SuffixAnySeqCRangeIterLazy 44238 44347 +0.2% 1.00x (?)
SuffixAnySeqCntRange 6740 6757 +0.3% 1.00x
SuffixAnySeqCntRangeLazy 6730 6725 -0.1% 1.00x
SuffixAnySequence 31125 31133 +0.0% 1.00x (?)
SuffixAnySequenceLazy 31116 31166 +0.2% 1.00x
SuffixArray 2127 2090 -1.7% 1.02x (?)
SuffixCountableRange 119 119 +0.0% 1.00x
SuffixCountableRangeLazy 13394 13222 -1.3% 1.01x
SuffixSequence 30826 30723 -0.3% 1.00x
SuffixSequenceLazy 30781 30733 -0.2% 1.00x
SumUsingReduce 230710 229913 -0.3% 1.00x (?)
SumUsingReduceInto 225575 226750 +0.5% 0.99x
SuperChars 194853 194987 +0.1% 1.00x (?)
TwoSum 4304 4337 +0.8% 0.99x
TypeFlood 168 171 +1.8% 0.98x (?)
Walsh 12194 12157 -0.3% 1.00x
Added (4)
TEST MIN MAX MEAN MAX_RSS
ArraySetElement 4581 4581 4581 4401835
ExclusivityGlobal 184 184 184 4364971
ExclusivityInMatSet 303 305 304 4364971
ExclusivityIndependent 132 132 132 4367701
Removed (3)
TEST MIN MAX MEAN MAX_RSS
accessGlobal 178 178 178 3827029
accessInMatSet 306 307 307 3831125
accessIndependent 130 130 130 3839317
Hardware Overview
  Model Name: Mac mini
  Model Identifier: Macmini7,1
  Processor Name: Intel Core i5
  Processor Speed: 2.8 GHz
  Number of Processors: 1
  Total Number of Cores: 2
  L2 Cache (per Core): 256 KB
  L3 Cache: 3 MB
  Memory: 16 GB

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

Soo... It looks like we found a benchmark that was never executed =)

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

No, seriously...
@swift-ci Please smoke test Linux platform

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

@swift-ci Please clean test Linux platform

@swift-ci
Copy link
Contributor

swift-ci commented Oct 4, 2017

Build failed
Swift Test Linux Platform
Git Sha - 86eeb54

@moiseev
Copy link
Contributor Author

moiseev commented Oct 4, 2017

@swift-ci Please smoke test macOS platform

@moiseev moiseev merged commit 41aa442 into swiftlang:master Oct 4, 2017
@moiseev moiseev deleted the benchmarks-tags branch October 4, 2017 21:46
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.

5 participants