This HTML automatically generated with rman for NEMO
Table of Contents
snapbench - benchmark (re)assigning masses to a snapshot
snapbench
[parameter=value]
snapbench performs a simple re-assigment of
the masses in a snapshot in a number of methods, in order to measure its
performance.
It also uses two memory models of keeping a snapshot: an array
of structs (AOS) vs. a struct of arrays (SOA). snapshots’ are normally stored
on disk as SOA’s, but most programs actually transpose them to an AOS, which
can be very in-efficient.
The following parameters are recognized
in order; they may be given in any order if the keyword is also given. Use
--help to confirm this man page is up to date.
- in=
- Input (snapshot) file.
No default. [???]
- mass=
- Expression for new masses [1]
- iter=
- Number
of iterations to test. A large number is useful to downweight the I/O contribution.
[10]
- mode=
- reading input mode (1=body 2=arrays) [1]
- out=
- output (snapshot)
file, if needed []
Here is the standard test that si part of
NEMO’s "make bench"
make -f $NEMO/src/nbody/trans/Benchfile all
mkplummer p6 1000000
snapbench p6 ’mass=1.0001’ iter=1000 mode=0
snapbench p6 ’mass=1.0001*m’ iter=1000 mode=1
snapbench p6 ’mass=1.0001’ iter=1000 mode=2
snapbench p6 ’mass=1.0001’ iter=1000 mode=3
with the following examples
CPU modes: 0 1 2 3
m2 (air) 0.36 2.89 2.81 0.37
i9-12900K 0.20 4.42 3.30 0.23
i7-1260P 0.30 6.39 5.89 0.37
Only reading and assignment is measured. No options for output (if
out= is given)
snapshot(5NEMO)
src/nbody/trans/snapbench.c
Peter Teuben
12-mar-2024 Finally documented PJT
Table of Contents