-
-
Notifications
You must be signed in to change notification settings - Fork 461
Update benchmark cpu approach #2473
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
Conversation
added sustained performance mode on profiling benchmarks, but not on sdk init changed cpu time reading from Process.getElapsedCpuTime() to reading /proc/self/stat file
reverted threshold from 5.5% to 5%
Performance metrics 🚀
|
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 2b4a65c | 359.07 ms | 399.76 ms | 40.69 ms |
| faa106a | 427.66 ms | 432.25 ms | 4.59 ms |
| b5825ba | 332.64 ms | 390.43 ms | 57.79 ms |
App size
| Revision | Plain | With Sentry | Diff |
|---|---|---|---|
| 2b4a65c | 1.73 MiB | 2.33 MiB | 619.47 KiB |
| faa106a | 1.73 MiB | 2.33 MiB | 619.47 KiB |
| b5825ba | 1.73 MiB | 2.33 MiB | 619.46 KiB |
Codecov ReportBase: 80.14% // Head: 80.14% // No change to project coverage 👍
Additional details and impacted files@@ Coverage Diff @@
## main #2473 +/- ##
=========================================
Coverage 80.14% 80.14%
Complexity 3872 3872
=========================================
Files 312 312
Lines 14669 14669
Branches 1941 1941
=========================================
Hits 11756 11756
Misses 2153 2153
Partials 760 760 Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
...rk/src/androidTest/java/io/sentry/uitest/android/benchmark/util/BenchmarkComparisonResult.kt
Outdated
Show resolved
Hide resolved
romtsn
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great stuff, especially the sustainedPerformanceMode flag 🚀
…rk/src/androidTest/java/io/sentry/uitest/android/benchmark/util/BenchmarkComparisonResult.kt Co-authored-by: Roman Zavarnitsyn <rom4ek93@gmail.com>
📜 Description
Cpu usage in benchmark has now been converted by reading the /proc/self/stat/ file.
Updated devices used in Saucelabs for benchmarking.
Decreased acceptance threshold from 5.5% to 5%
#skip-changelog
💡 Motivation and Context
Previous approach was reading global cpu time to make comparisons.
New approach reads /proc/self/stat/ file, which returns the cpu time spent by the application only, giving more accurate results.
Also, the
sustainedPerformanceModehas been enabled in the benchmarks, which prevents thermal throttling, increasing accuracy even more.💚 How did you test it?
📝 Checklist
🔮 Next steps