-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[wasm] browser profiler #77449
[wasm] browser profiler #77449
Conversation
Tagging subscribers to 'arch-wasm': @lewing Issue Detailsnull
|
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
16b5ee6
to
1df3637
Compare
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.
incomplete review, just sharing some comments.
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.
LGTM except there seems to be some copy/paste errors in the invoke-cs methods
This reverts commit 0e24ea7. This breaks with v8 10.9.130 with: ``` Error: Invalid 'startMark' argument: No numeric 'startTime' field at pe (/home/helixbot/work/B2E7090F/w/A520093B/e/performance/artifacts/bin/for-running/MicroBenchmarks/659adab0-5c86-4e74-8913-672bd56fd58e/bin/net7.0/browser-wasm/AppBundle/dotnet.js:3:12994) at /home/helixbot/work/B2E7090F/w/A520093B/e/performance/artifacts/bin/for-running/MicroBenchmarks/659adab0-5c86-4e74-8913-672bd56fd58e/bin/net7.0/browser-wasm/AppBundle/dotnet.js:5:95874 exiting due to exception: Error: Invalid 'startMark' argument: No numeric 'startTime' field ``` It works fine with older versions like `10.7.193` (current stable).
This reverts commit 0e24ea7. It broke all the perf pipeline wasm builds. It happens with v8 `10.9.130`: ``` Error: Invalid 'startMark' argument: No numeric 'startTime' field at pe (/home/helixbot/work/B2E7090F/w/A520093B/e/performance/artifacts/bin/for-running/MicroBenchmarks/659adab0-5c86-4e74-8913-672bd56fd58e/bin/net7.0/browser-wasm/AppBundle/dotnet.js:3:12994) at /home/helixbot/work/B2E7090F/w/A520093B/e/performance/artifacts/bin/for-running/MicroBenchmarks/659adab0-5c86-4e74-8913-672bd56fd58e/bin/net7.0/browser-wasm/AppBundle/dotnet.js:5:95874 exiting due to exception: Error: Invalid 'startMark' argument: No numeric 'startTime' field ``` - It works fine with older versions like `10.7.193` (current stable). - It wasn't caught in the CI checks because those are using an older version of v8.
reporting both interpreter, AOT and some Javascript calls directly to chrome dev tools via
performance.measure()
Chrome
FireFox
Profiler
src\mono\mono\profiler\browser.c
only for WASM platformperformance.measure
APIUsage
And
And start profiling in browser dev tools
Notes
Future work
Changes
browser.c
libmono-profiler-browser.a
it is always linked into dotnet.wasm in both Debug and Release configurations--profiler
argument to AOT compilerContributes to #76316