nodegrind

0.6.2 • Public • Published

nodegrind

Profile nodejs applications with kcachegrind, either using the nodegrind wrapper or the more targeted profiling module.

Installation

Node 0.10

npm install nodegrind@0.5.0

Node 4.2

npm install nodegrind

Full-program profiling:

node nodegrind [-o callgrind.out.<pid><main.js> <params>
kcachegrind nodegrind.callgrind

Targeted profiling by using nodegrind as a module

var nodegrind = require('nodegrind'),
    fs = require('fs');
 
nodegrind.startCPU('someProfile');
 
// Run the code you are interested in
 
// Get the callgrind profile as a string
var prof = nodegrind.stopCPU('someProfile');
fs.writeFileSync('callgrind.out.someProfile', prof);
// open kcachegrind with 'kcachegrind callgrind.out.someProfile'
 
// Alternatively, get a Chrome *.cpuprofile that you can load into the Chrome
// profiler (right-click on 'Profiles' in left pane in the 'Profiles' tab)
var prof = nodegrind.stopCPU('someProfile', 'cpuprofile');
fs.writeFileSync('someProfile.cpuprofile', prof);

KCachegrind screenshot

Readme

Keywords

Package Sidebar

Install

npm i nodegrind

Weekly Downloads

2

Version

0.6.2

License

GPLv2

Last publish

Collaborators

  • gwicke