Talk:Performance: Difference between revisions
From Biowerkzeug Wiki
Jump to navigationJump to search
benchmarking scaling |
|||
(3 intermediate revisions by one other user not shown) | |||
Line 3: | Line 3: | ||
== Scaling == | == Scaling == | ||
How to run scaling tests/testing methodology: | |||
Use [[test_scaling.py]] which in turn uses [[calc_testjobs_linux.sh]]. | |||
cd testjobs | |||
test_scaling.py ''NSLOTS'' | |||
where ''NSLOTS'' is the maximum number of available cpus/cores. Results are the files | |||
scaling.xvg # numbers | |||
scaling.png # graphs | |||
* Only measures ''wall time'', hence must be run on an empty machine. | |||
* Uses <code>date +%s</code> so accuracy is limited to seconds. | |||
* No repeat runs; results may vary slightly. | |||
Manually: | |||
Use updated [[calc_testjobs_linux.sh]] | Use updated [[calc_testjobs_linux.sh]] | ||
for NSLOTS in `seq | <source lang="bash"> | ||
DATA=scaling.xvg | |||
MAXSLOTS=8 | |||
echo -e "# scaling for Hippo\n# numthreads walltime/s" > $DATA | |||
for NSLOTS in `seq $MAXSLOTS`; do | |||
echo "-- NSLOTS = $NSLOTS"; | echo "-- NSLOTS = $NSLOTS"; | ||
../../calc_testjobs_linux.sh -n $NSLOTS walp_octane_NPT_sp_MD \ | ../../calc_testjobs_linux.sh -n $NSLOTS walp_octane_NPT_sp_MD \ | ||
| awk '/BENCHMARK/ {print $3, $4}' >> | | awk '/BENCHMARK/ {print $3, $4}' >> $DATA; | ||
done | done | ||
</source> | |||
All the above remarks apply here, too. |
Latest revision as of 15:44, 8 December 2008
Integration with tests
We could write a script that does the benchmark while running the test. It would even be possible to automatically post it (with the user's consent, of course). — Oli 16:03, 14 November 2008 (UTC)
Scaling
How to run scaling tests/testing methodology:
Use test_scaling.py which in turn uses calc_testjobs_linux.sh.
cd testjobs test_scaling.py NSLOTS
where NSLOTS is the maximum number of available cpus/cores. Results are the files
scaling.xvg # numbers scaling.png # graphs
- Only measures wall time, hence must be run on an empty machine.
- Uses
date +%s
so accuracy is limited to seconds. - No repeat runs; results may vary slightly.
Manually: Use updated calc_testjobs_linux.sh
DATA=scaling.xvg
MAXSLOTS=8
echo -e "# scaling for Hippo\n# numthreads walltime/s" > $DATA
for NSLOTS in `seq $MAXSLOTS`; do
echo "-- NSLOTS = $NSLOTS";
../../calc_testjobs_linux.sh -n $NSLOTS walp_octane_NPT_sp_MD \
| awk '/BENCHMARK/ {print $3, $4}' >> $DATA;
done
All the above remarks apply here, too.