Skip to content

Add a benchmark for bridging date components #22101

New issue

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

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

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jan 29, 2019

Conversation

Catfish-Man
Copy link
Contributor

Turns out this is slower than hoped-for, so let's get a test keeping an eye on it

@Catfish-Man Catfish-Man self-assigned this Jan 24, 2019
@Catfish-Man
Copy link
Contributor Author

@swift-ci please benchmark

@swift-ci
Copy link
Contributor

Build comment file:

Performance: -O

TEST OLD NEW DELTA RATIO
Regression
ObjectiveCBridgeFromNSArrayAnyObjectForced 4277 4631 +8.3% 0.92x (?)
Added
ObjectiveCBridgeFromNSDateComponents 625 700 650

Code size: -O

TEST OLD NEW DELTA RATIO
Regression
ObjectiveCBridging.o 42664 51180 +20.0% 0.83x

Performance: -Osize

TEST OLD NEW DELTA RATIO
Regression
PrefixWhileAnyCollectionLazy 159 176 +10.7% 0.90x (?)
Improvement
CharacterLiteralsLarge 111 100 -9.9% 1.11x
CharacterLiteralsSmall 345 322 -6.7% 1.07x (?)
Added
ObjectiveCBridgeFromNSDateComponents 569 632 590

Code size: -Osize

TEST OLD NEW DELTA RATIO
Regression
ObjectiveCBridging.o 40111 48579 +21.1% 0.83x

Performance: -Onone

TEST OLD NEW DELTA RATIO
Improvement
DictionaryBridgeToObjC_Access 1227 1102 -10.2% 1.11x (?)
Added
ObjectiveCBridgeFromNSDateComponents 579 630 611
Benchmark Check Report
⚠️🔤 ObjectiveCBridgeFromNSDateComponents name is composed of 5 words.
Split ObjectiveCBridgeFromNSDateComponents name into dot-separated groups and variants. See http://bit.ly/BenchmarkNaming
⚠️Ⓜ️ ObjectiveCBridgeFromNSDateComponents has very wide range of memory used between independent, repeated measurements.
ObjectiveCBridgeFromNSDateComponents mem_pages [i1, i2]: min=[183, 181] 𝚫=2 R=[20, 20]
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
--------------

@Catfish-Man
Copy link
Contributor Author

@swift-ci please smoke test and merge

1 similar comment
@Catfish-Man
Copy link
Contributor Author

@swift-ci please smoke test and merge

@Catfish-Man
Copy link
Contributor Author

It's failing trying to merge the PR, somehow

@Catfish-Man Catfish-Man merged commit 6a604b6 into swiftlang:master Jan 29, 2019
@Catfish-Man Catfish-Man deleted the datecomponents-bench branch January 29, 2019 00:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants