-
Notifications
You must be signed in to change notification settings - Fork 421
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
Use 64-bit floats for call tree timings. #5371
Conversation
2c7b023
to
a820532
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #5371 +/- ##
=======================================
Coverage 85.96% 85.96%
=======================================
Files 312 312
Lines 30331 30331
Branches 8295 8295
=======================================
Hits 26073 26073
Misses 3661 3661
Partials 597 597 ☔ View full report in Codecov by Sentry. |
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!
@@ -197,6 +197,26 @@ describe('unfiltered call tree', function () { | |||
}); | |||
}); | |||
|
|||
it('computes correct numbers when using large weights', function () { |
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 for the added test!
Fixes firefox-devtools#5310. This matches the precision of regular JavaScript numbers. 32-bit floats don't have enough precision to exactly represent integers larger than 16,777,216. So they don't have sufficient precision for the call tree which sometimes is used to with bytes values which can range in the gigabytes.
a820532
to
c49388e
Compare
## Updates: [Nicolas Chevobbe] Make timeline ruler notches visible in High Contrast Mode (#5346) [Nazım Can Altınova] Add the ability to mark marker fields as hidden (#5354) [Maxx Crawford] Update guide-startup-shutdown.md (#5357) [Nazım Can Altınova] Enable prettier on the docs-user markdown files (#5358) [Paul Adenot] Allow searching by Content-Type in the network marker view (#5351) [Florian Quèze] Hide the pid in global tracks if it is 0. (#5361) [Markus Stange] Make inverting the call tree fast, by computing inverted call nodes lazily (#4900) [Markus Stange] Use 64-bit floats for call tree timings. (#5371) [Markus Stange] Extend the workaround in the v53 upgrader to generate missing subcategory columns. (#5369) ## Also thanks to our localizers: de: Michael Köhler el: Jim Spentzos en-GB: Paul es-CL: ravmn fr: Théo Chevalier fur: Fabio Tomat fy-NL: Fjoerfoks ia: Melo46 it: Francesco Lodolo nl: Mark Heijl pt-BR: Marcelo Ghelman ru: Valery Ledovskoy sv-SE: Luna Jernberg, Andreas Pettersson tr: Grk uk: Іhor Hordiichuk zh-CN: Olvcpr423 zh-TW: Pin-guang Chen
Fixes #5310.
This matches the precision of regular JavaScript numbers. 32-bit floats don't have enough precision to exactly represent integers larger than 16,777,216. So they don't have sufficient precision for the call tree which sometimes is used to with bytes values which can range in the gigabytes.