Skip to content

[stdlib] Misc inlinability fixes #20410

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 3 commits into from
Nov 8, 2018
Merged

Conversation

airspeedswift
Copy link
Member

Might need to break these up if they have perf impact but let's see.

@airspeedswift
Copy link
Member Author

@swift-ci please benchmark

@swift-ci
Copy link
Contributor

swift-ci commented Nov 7, 2018

Build comment file:

Performance: -O

TEST OLD NEW DELTA RATIO
Regression
Dictionary2 802 946 +18.0% 0.85x
IterateData 1403 1615 +15.1% 0.87x
Dictionary2OfObjects 2081 2274 +9.3% 0.92x (?)

Code size: -O

TEST OLD NEW DELTA RATIO
Regression
NSStringConversion.o 969 1097 +13.2% 0.88x
CString.o 8098 8466 +4.5% 0.96x
ObjectiveCBridging.o 41352 43176 +4.4% 0.96x
ObjectiveCNoBridgingStubs.o 8053 8181 +1.6% 0.98x
Improvement
DictTest2.o 15721 15257 -3.0% 1.03x
StringInterpolation.o 7355 7163 -2.6% 1.03x

Performance: -Osize

TEST OLD NEW DELTA RATIO
Regression
Dictionary2 811 1110 +36.9% 0.73x
Dictionary2OfObjects 2161 2434 +12.6% 0.89x
IterateData 1359 1517 +11.6% 0.90x

Code size: -Osize

TEST OLD NEW DELTA RATIO
Regression
NSStringConversion.o 1066 1274 +19.5% 0.84x
ObjectiveCBridging.o 40087 41127 +2.6% 0.97x
CString.o 8122 8330 +2.6% 0.98x
ObjectiveCNoBridgingStubs.o 7919 8087 +2.1% 0.98x
Improvement
DictTest2.o 14806 14342 -3.1% 1.03x
StringInterpolation.o 6628 6484 -2.2% 1.02x

Performance: -Onone

TEST OLD NEW DELTA RATIO
Regression
MapReduceLazyCollection 20910 27995 +33.9% 0.75x
ArrayAppendLazyMap 164376 213145 +29.7% 0.77x
DropFirstArrayLazy 30637 39263 +28.2% 0.78x
DropLastArrayLazy 10221 13066 +27.8% 0.78x
PrefixArrayLazy 31104 39587 +27.3% 0.79x
SuffixArrayLazy 10377 13002 +25.3% 0.80x
MapReduceLazyCollectionShort 32815 40183 +22.5% 0.82x
ChainedFilterMap 230936 279232 +20.9% 0.83x
StringWordBuilderReservingCapacity 2461 2719 +10.5% 0.91x
Improvement
RemoveWhereQuadraticString 2756 2501 -9.3% 1.10x

Code size: Swift libraries

TEST OLD NEW DELTA RATIO
Regression
libswiftObjectiveC.dylib 16384 20480 +25.0% 0.80x
How to read the data The tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.

If you see any unexpected regressions, you should consider fixing the regressions before you merge the PR.

Noise: Sometimes the performance results (not code size!) contain false alarms. Unexpected regressions which are marked with '(?)' are probably noise. If you see regressions which you cannot explain you can try to run the benchmarks again. If regressions still show up, please consult with the performance team (@eeckstein).

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
Copy link
Member Author

@swift-ci please smoke test and merge

@airspeedswift
Copy link
Member Author

@swift-ci please smoke test and merge

@swift-ci
Copy link
Contributor

swift-ci commented Nov 8, 2018

Build failed
Swift Test Linux Platform
Git Sha - 1f9cce61127f8dbcec034e0669d1aa4817491439

@swift-ci
Copy link
Contributor

swift-ci commented Nov 8, 2018

Build failed
Swift Test OS X Platform
Git Sha - 1f9cce61127f8dbcec034e0669d1aa4817491439

@swift-ci swift-ci merged commit cec6d69 into swiftlang:master Nov 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants