diagnostics: add startup phase trace for runtime bootstrap#66
diagnostics: add startup phase trace for runtime bootstrap#66sonukapoor wants to merge 3 commits into
Conversation
|
Quick cold-start update: Using Tried:
Outcome:
Current status: diagnostics improved, but no confirmed startup win yet. Next: split |
6d8019d to
759a519
Compare
| } | ||
| return 1; | ||
| } | ||
| startup_trace.Mark("install-module-loader"); |
There was a problem hiding this comment.
This should not be compiled-in if tracing is disabled
There was a problem hiding this comment.
Fixed in d397007. Runtime startup tracing now follows the existing CLI pattern: the tracer implementation and mark calls are behind ENABLE_TRACING, and the normal build no longer contains the startup trace marker strings. Verified both normal and tracing builds locally.
Summary
Add an opt-in startup phase trace for runtime bootstrap diagnosis.
This PR adds lightweight, environment-gated tracing in
src/edge_runtime.ccto emit per-phase startup timing markers duringRunScriptWithGlobals.EDGE_STARTUP_TRACE=1stderredge_startup_trace(phase name)delta_ms(time since previous marker)total_ms(time since traced startup begin)Why
Current benchmark work shows startup-sensitive gaps, but wall-clock totals alone do not identify which bootstrap phase dominates.
This trace is intended as a diagnosis artifact so follow-up performance changes can target concrete hotspots and produce before/after evidence per phase.
Scope
EDGE_STARTUP_TRACEis unset.Example usage
EDGE_STARTUP_TRACE=1 ./build-edge/edge benchmarks/workloads/empty-startup.js EDGE_STARTUP_TRACE=1 ./build-edge/edge -e ""Example output (local)
This local sample suggests
bootstrap.node-and-webis a major hotspot candidate for the next narrow cold-start optimization pass.