Skip to content
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

fix(performance): app start frames can start with zeroed values #3881

Merged
merged 6 commits into from
Jun 17, 2024

Conversation

krystofwoldrich
Copy link
Member

📢 Type of change

  • Bugfix

📜 Description

The native implementations dropped zero value measurements, which could cause app start frames not to be measured as frames on transaction start would be null.

This PR change native impls to return zero values and adds zero value check to processing final frames.

💚 How did you test it?

sample app, unit tests

📝 Checklist

  • I reviewed submitted code
  • I added tests to verify changes
  • No new PII added or SDK only sends newly added PII if sendDefaultPII is enabled
  • All tests passing
  • No breaking changes

Copy link
Contributor

github-actions bot commented Jun 11, 2024

Android (legacy) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 483.70 ms 508.35 ms 24.65 ms
Size 17.73 MiB 19.94 MiB 2.21 MiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
8900e1a+dirty 430.68 ms 456.13 ms 25.44 ms
d361d38 354.10 ms 381.69 ms 27.59 ms
9c48b2c 349.24 ms 385.96 ms 36.72 ms
9a3ca65+dirty 326.93 ms 330.14 ms 3.21 ms
d197b5c+dirty 338.94 ms 354.87 ms 15.93 ms
457e29f 398.10 ms 421.39 ms 23.29 ms
e5c9b8b 409.02 ms 426.66 ms 17.64 ms
5bb8d5f 431.21 ms 459.40 ms 28.19 ms
31fcca2 391.22 ms 414.78 ms 23.56 ms
abb7058 370.27 ms 389.58 ms 19.31 ms

App size

Revision Plain With Sentry Diff
8900e1a+dirty 17.73 MiB 19.75 MiB 2.01 MiB
d361d38 17.73 MiB 19.81 MiB 2.08 MiB
9c48b2c 17.73 MiB 19.80 MiB 2.07 MiB
9a3ca65+dirty 17.73 MiB 20.04 MiB 2.31 MiB
d197b5c+dirty 17.73 MiB 20.04 MiB 2.31 MiB
457e29f 17.73 MiB 19.84 MiB 2.10 MiB
e5c9b8b 17.73 MiB 19.83 MiB 2.10 MiB
5bb8d5f 17.73 MiB 19.93 MiB 2.20 MiB
31fcca2 17.73 MiB 19.90 MiB 2.17 MiB
abb7058 17.73 MiB 19.83 MiB 2.10 MiB

Copy link
Contributor

github-actions bot commented Jun 11, 2024

iOS (new) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1223.47 ms 1227.09 ms 3.62 ms
Size 2.92 MiB 3.59 MiB 686.60 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
34aba08+dirty 1268.58 ms 1276.80 ms 8.22 ms
1d86dd6+dirty 1289.25 ms 1293.36 ms 4.11 ms
abb7058+dirty 1260.28 ms 1266.56 ms 6.28 ms
70caa60+dirty 1279.08 ms 1281.54 ms 2.46 ms
e73f4ed+dirty 1282.90 ms 1309.30 ms 26.40 ms
22e31b6+dirty 1276.55 ms 1278.12 ms 1.57 ms
27ef4ee+dirty 1236.41 ms 1244.90 ms 8.49 ms
8900e1a+dirty 1268.36 ms 1273.04 ms 4.68 ms
5bb8d5f+dirty 1215.04 ms 1217.52 ms 2.48 ms
6e8584e+dirty 1271.71 ms 1281.26 ms 9.55 ms

App size

Revision Plain With Sentry Diff
34aba08+dirty 2.92 MiB 3.41 MiB 499.03 KiB
1d86dd6+dirty 2.92 MiB 3.44 MiB 538.27 KiB
abb7058+dirty 2.92 MiB 3.43 MiB 524.53 KiB
70caa60+dirty 2.92 MiB 3.39 MiB 486.04 KiB
e73f4ed+dirty 2.92 MiB 3.38 MiB 475.71 KiB
22e31b6+dirty 2.92 MiB 3.43 MiB 524.74 KiB
27ef4ee+dirty 2.92 MiB 3.41 MiB 503.72 KiB
8900e1a+dirty 2.92 MiB 3.39 MiB 485.96 KiB
5bb8d5f+dirty 2.92 MiB 3.48 MiB 575.85 KiB
6e8584e+dirty 2.92 MiB 3.44 MiB 536.52 KiB

@krystofwoldrich krystofwoldrich changed the title Kw/fix-app-start-native-frames fix(performance): app start frames can start with zeroed values Jun 11, 2024
Base automatically changed from kw/fix-native-frames-logs to main June 13, 2024 12:15
Copy link
Collaborator

@lucas-zimerman lucas-zimerman left a comment

Choose a reason for hiding this comment

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

LGTM!

@krystofwoldrich krystofwoldrich enabled auto-merge (squash) June 17, 2024 14:39
@krystofwoldrich krystofwoldrich merged commit 95cfe1f into main Jun 17, 2024
52 of 53 checks passed
@krystofwoldrich krystofwoldrich deleted the kw/fix-app-start-native-frames branch June 17, 2024 14:41
Copy link
Contributor

iOS (legacy) Performance metrics 🚀

  Plain With Sentry Diff
Startup time 1224.58 ms 1225.80 ms 1.22 ms
Size 2.36 MiB 3.03 MiB 680.87 KiB

Baseline results on branch: main

Startup times

Revision Plain With Sentry Diff
34aba08+dirty 1276.78 ms 1308.52 ms 31.74 ms
1d86dd6+dirty 1249.71 ms 1279.16 ms 29.45 ms
abb7058+dirty 1255.42 ms 1268.86 ms 13.44 ms
70caa60+dirty 1218.27 ms 1230.30 ms 12.03 ms
e73f4ed+dirty 1243.27 ms 1244.52 ms 1.25 ms
22e31b6+dirty 1253.62 ms 1265.96 ms 12.34 ms
27ef4ee+dirty 1293.52 ms 1296.08 ms 2.56 ms
8900e1a+dirty 1210.27 ms 1218.66 ms 8.39 ms
5bb8d5f+dirty 1235.47 ms 1237.39 ms 1.92 ms
6e8584e+dirty 1274.50 ms 1296.82 ms 22.32 ms

App size

Revision Plain With Sentry Diff
34aba08+dirty 2.36 MiB 2.85 MiB 495.32 KiB
1d86dd6+dirty 2.36 MiB 2.89 MiB 535.43 KiB
abb7058+dirty 2.36 MiB 2.87 MiB 520.42 KiB
70caa60+dirty 2.36 MiB 2.83 MiB 479.27 KiB
e73f4ed+dirty 2.36 MiB 2.82 MiB 469.44 KiB
22e31b6+dirty 2.36 MiB 2.87 MiB 520.67 KiB
27ef4ee+dirty 2.36 MiB 2.85 MiB 500.03 KiB
8900e1a+dirty 2.36 MiB 2.83 MiB 479.25 KiB
5bb8d5f+dirty 2.36 MiB 2.92 MiB 570.22 KiB
6e8584e+dirty 2.36 MiB 2.88 MiB 533.17 KiB

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

2 participants