-
-
Notifications
You must be signed in to change notification settings - Fork 363
impr(profiling): continuous chunk serialization off main thread #5613
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
impr(profiling): continuous chunk serialization off main thread #5613
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #5613 +/- ##
=============================================
- Coverage 86.483% 86.069% -0.415%
=============================================
Files 415 415
Lines 35291 35268 -23
Branches 15271 14973 -298
=============================================
- Hits 30521 30355 -166
- Misses 4728 4872 +144
+ Partials 42 41 -1
... and 32 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
Performance metrics 🚀
|
Revision | Plain | With Sentry | Diff |
---|---|---|---|
fd5961e | 1210.59 ms | 1235.57 ms | 24.98 ms |
035974f | 1225.89 ms | 1251.23 ms | 25.34 ms |
2b02431 | 1229.63 ms | 1248.98 ms | 19.35 ms |
e0424b9 | 1204.23 ms | 1241.08 ms | 36.85 ms |
2481950 | 1221.04 ms | 1248.98 ms | 27.94 ms |
d05d866 | 1211.78 ms | 1230.96 ms | 19.18 ms |
e64d3d4 | 1241.90 ms | 1260.10 ms | 18.20 ms |
acac774 | 1217.76 ms | 1253.29 ms | 35.52 ms |
4d264fa | 1223.48 ms | 1246.91 ms | 23.44 ms |
884b224 | 1221.11 ms | 1255.88 ms | 34.77 ms |
App size
Revision | Plain | With Sentry | Diff |
---|---|---|---|
fd5961e | 23.74 KiB | 874.07 KiB | 850.32 KiB |
035974f | 23.74 KiB | 874.07 KiB | 850.33 KiB |
2b02431 | 23.75 KiB | 850.73 KiB | 826.98 KiB |
e0424b9 | 23.74 KiB | 874.07 KiB | 850.33 KiB |
2481950 | 23.74 KiB | 872.74 KiB | 849.00 KiB |
d05d866 | 23.75 KiB | 878.60 KiB | 854.85 KiB |
e64d3d4 | 23.75 KiB | 855.37 KiB | 831.62 KiB |
acac774 | 23.75 KiB | 866.51 KiB | 842.76 KiB |
4d264fa | 23.74 KiB | 874.07 KiB | 850.33 KiB |
884b224 | 23.75 KiB | 879.55 KiB | 855.80 KiB |
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.
Thanks @armcknight, LGTM with one comment.
Co-authored-by: Philipp Hofmann <philipp.hofmann@sentry.io>
…or main profile data
…le-serialization-off-main-thread
It was pointed out that we're performing JSON serialization of continuous profiling chunks on the main thread. Move it off to a background thread similar to how it was done for transaction profiling in #4377.
Modified a test to ensure the proper queue-based functionality.
I also ran the continuous profiler with the CPU work feature in the benchmarking tab of the iOS-Swift sample app to ensure data is still making it to our backend:
