aboutsummaryrefslogtreecommitdiff
path: root/doc/tips/optimising_ikiwiki.mdwn
diff options
context:
space:
mode:
authorJoey Hess <joey@gnu.kitenet.net>2009-10-16 15:50:33 -0400
committerJoey Hess <joey@gnu.kitenet.net>2009-10-16 15:50:33 -0400
commitb2fd4f9b254610283d3fa6944ea73941c2045769 (patch)
treeb9290b14472b902cec6ba5582862d11aa685e46f /doc/tips/optimising_ikiwiki.mdwn
parent2209a07ba34830c63ce578881da6a006bc48d90f (diff)
downloadikiwiki-b2fd4f9b254610283d3fa6944ea73941c2045769.tar
ikiwiki-b2fd4f9b254610283d3fa6944ea73941c2045769.tar.gz
explain how to profile
Diffstat (limited to 'doc/tips/optimising_ikiwiki.mdwn')
-rw-r--r--doc/tips/optimising_ikiwiki.mdwn15
1 files changed, 15 insertions, 0 deletions
diff --git a/doc/tips/optimising_ikiwiki.mdwn b/doc/tips/optimising_ikiwiki.mdwn
index 6d0997603..085ef0306 100644
--- a/doc/tips/optimising_ikiwiki.mdwn
+++ b/doc/tips/optimising_ikiwiki.mdwn
@@ -140,6 +140,21 @@ That is accomplished as follows:
Be aware that the [[plugins/search]] plugin has to update the search index
whenever any page is changed. This can slow things down somewhat.
+## profiling
+
+If you have a repeatable change that ikiwiki takes a long time to build,
+and none of the above help, the next thing to consider is profiling
+ikiwiki.
+
+The best way to do it is:
+
+* Install [[cpan Devel::NYTProf]]
+* `PERL5OPT=-d:NYTProf`
+* `export PER5OPT`
+* Now run ikiwiki as usual, and it will generate a `nytprof.out` file.
+* Run `nytprofhtml` to generate html files.
+* Those can be examined to see what parts of ikiwiki are being slow.
+
## scaling to large numbers of pages
Finally, let's think about how huge number of pages can affect ikiwiki.