summaryrefslogtreecommitdiffstats
path: root/HACKING
diff options
context:
space:
mode:
authorEvan Martin <martine@danga.com>2011-12-07 20:30:59 (GMT)
committerEvan Martin <martine@danga.com>2011-12-07 20:30:59 (GMT)
commitb922101633f3ec5973b7c7de0956bbef09522e4f (patch)
tree10ecac3c08598a0bf503f6d9debd060610c21bd7 /HACKING
parent8aae49d6f74fa5124f080de814c7ff37144b6373 (diff)
downloadNinja-b922101633f3ec5973b7c7de0956bbef09522e4f.zip
Ninja-b922101633f3ec5973b7c7de0956bbef09522e4f.tar.gz
Ninja-b922101633f3ec5973b7c7de0956bbef09522e4f.tar.bz2
performance testing note
Diffstat (limited to 'HACKING')
-rw-r--r--HACKING9
1 files changed, 9 insertions, 0 deletions
diff --git a/HACKING b/HACKING
index fc7712a..dcd5888 100644
--- a/HACKING
+++ b/HACKING
@@ -9,6 +9,15 @@ Test-driven development:
Remember to build "all" before committing to verify the other source
still works!
+Testing performance impact of changes:
+ If you have a Chrome build handy, it's a good test case.
+ Otherwise, https://github.com/martine/ninja/downloads has a copy of
+ the Chrome build files (and depfiles). You can untar that, then run
+ "ninja chrome". I often do something like:
+ (for i in `seq 5`; do time -p ninja chrome) 2>&1 | grep real > old
+ (for i in `seq 5`; do time -p ninja-new chrome) 2>&1 | grep real > new
+ and then compare those two lists of timings either by eye or with R.
+
Coding guidelines:
- Function name are camelcase.
- Member methods are camelcase, expect for trivial getters which are