Hacker News new | ask | show | jobs
by randompi 1295 days ago
Whats that profiler being used?
2 comments

Looks like the one built into chrome. You can open your browser and attach a node instance so you can debug and profile it.

Here's a basic How-to:

* Run node with `node --inspect <file>`

* Open Chrome and go to `chrome://inspect`

* After it finds your target, click the inspect button to launch a debugger.

It looks to me like the profile viewer is actually speedscope ( https://www.speedscope.app/ ). I find it nicer for exploring profiles compared with Chrome's built-in viewer.

To use with Node.js profiling, do the `node --inspect` and `chrome://inspect` steps, then save the profile as a .cpuprofile file and drag that file into speedscope.

Another thing I've found useful is programmatically starting/stopping the profiler using `console.profile()` and `console.profileEnd()`.

That is a great tool. Also, I learned about perfetto the first time today, after doing Javascript profiling for a few years.
Author here.

Answered this elsewhere here: It's the `--cpu-prof` argument with node and the resulting profile is loaded into speedscope.