Webgrind is an Xdebug profiling web frontend in PHP. It implements a subset of the features of kcachegrind and installs in seconds and works on all platforms. For quick'n'dirty optimizations it does the job. Here's a screenshot showing the output from profiling:
- Super simple, cross platform installation - obviously :)
- Track time spent in functions by self cost or inclusive cost. Inclusive cost is time inside function + calls to other functions.
- See if time is spent in internal or user functions.
- See where any function was called from and which functions it calls.
- Generate a call graph using gprof2dot.py
Suggestions for improvements and new features are more than welcome - this is just a start.
- Download webgrind
- Unzip package to favourite path accessible by webserver.
- Load webgrind in browser and start profiling
Alternatively, on PHP 5.4+ run the application using the PHP built-in server
with the command
composer serve or
php -S 0.0.0.0:8080 index.php if you
are not using Composer.
For faster preprocessing, give write access to the
bin subdirectory, or compile manually:
- Linux / Mac OS X: execute
makein the unzipped folder (requires GCC or Clang.)
- Windows: execute
nmake -f NMakeFilein the unzipped folder (requires Visual Studio 2015 or higher.)
See the Installation Wiki page for more.
Current maintainer is Micah Ng.