Warning: This page has not been updated in over over a year and may be outdated or deprecated.
development:profiling
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revisionNext revisionBoth sides next revision | ||
development:profiling [2017/05/03 13:18] – created demiankatz | development:profiling [2023/11/27 18:54] – demiankatz | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Profiling ====== | ====== Profiling ====== | ||
- | Profiling is the process of collecting information about which functions are called during program execution, and how long these calls take. It can help identify bottlenecks and inefficiencies in the code. Several options are available for profiling | + | Profiling is the process of collecting information about which functions are called during program execution, and how long these calls take. It can help identify bottlenecks and inefficiencies in the code. Several options are available for profiling |
===== XHProf / Tideways ===== | ===== XHProf / Tideways ===== | ||
- | VuFind | + | VuFind® |
To use one of these profilers: | To use one of these profilers: | ||
- | - Install the necessary PHP extension ("pecl install xhprof-beta" for XHProf, or follow the compilation instructions on the Tideways site for that product). | + | - Install the necessary PHP extension ("pecl install xhprof" |
- | - Install the [[https:// | + | - Make sure that xhprof_html is symlinked to somewhere in your web root, while xhprof_lib is symlinked somewhere on PHP's search path. This directory may have been installed as part of the PECL process, but if not, you can get it from [[https:// |
- Uncomment the VUFIND_PROFILER_XHPROF setting in your $VUFIND_LOCAL_DIR/ | - Uncomment the VUFIND_PROFILER_XHPROF setting in your $VUFIND_LOCAL_DIR/ | ||
- Restart Apache. | - Restart Apache. | ||
- | If these steps have been completed successfully, | + | If these steps have been completed successfully, |
===== XDebug ===== | ===== XDebug ===== | ||
- | A slightly more advanced option is to install the XDebug extension, which allows you to trigger profile data collection in a variety of configurable ways and then analyze the output data using a graphical tool in the CacheGrind family. See the [[https:// | + | A slightly more advanced option is to install the XDebug extension, which allows you to trigger profile data collection in a variety of configurable ways and then analyze the output data using a graphical tool in the CacheGrind family. See the [[https:// |
---- struct data ---- | ---- struct data ---- | ||
+ | properties.Page Owner : | ||
---- | ---- | ||
development/profiling.txt · Last modified: 2023/11/27 18:55 by demiankatz