Uh oh!
There was an error while loading. Please reload this page.
[browser] EventPipe - CPU sampling - single thread - #113758
Conversation
c1b4ef2 to
556f3b9CompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
be32979 to
d9161edCompare- add LMF to profiler in interp and jiterp
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
lateralusX
left a comment
There was a problem hiding this comment.
Mainly looked at the native code. Overall, it looks good, some comments are not actionable in this PR and I might convert them into issues later, but wanted to include them since this PR surface the underlying issues, other comments are more questions or checking assumptions and some are actually actionable :)
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
- session->refcount, ep_session_dec_ref, ep_session_inc_ref - conditional default_profiler_sample_rate_in_nanoseconds and use of ep_sample_profiler_get_sampling_rate() - don't register for MONO_PROFILER_CALL_INSTRUMENTATION_LEAVE and MONO_PROFILER_CALL_INSTRUMENTATION_TAIL_CALL - inlining feedback for method_enter, method_samplepoint, method_exc_leave - LMF feedback for mono_jiterp_prof_enter, mono_jiterp_prof_samplepoint, mono_jiterp_prof_leave
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
lateralusX
left a comment
There was a problem hiding this comment.
Changes to native runtime code LGTM!
pavelsavara
commented
Mar 27, 2025
/ba-g CI timeouts |
single-threaded sampling in EP -
ep-rt-mono-runtime-provider.cshould_record_sample()calculation about when to take next samplesample_current_thread_stack_tracewithoutMonoContext *because in interp we don't have itmono_wasm_instrument_methodto disable the instrumentation. Could be some callspec in the future.Fixes
mono_wasm_profiler_free_methodconditionep_session_freeuse-after-free in STINTERP_PROFILER_RAISEto not always create contextep_rt_wait_event_freeIPon jiterpMonoProfilerCallContextallocation feedbackconstfeedbackFlags
WASM_PERFTRACINGin rollup envDOTNET_WasmPerfInstrumentation, opt in viaWasmPerfInstrumentationMSBuild propertyMetricsSupportby default for browserTesting: I'm doing manual testing with next PR which contains the JavaScript client. That's lot of TypeScript which would take attention away from C details in this PR. And so I split this PR as separate step.
Contributes to #76316
On top of #112352