SFGenBenchmark/UsageExamples

sfgen Benchmark - Usage Examples

Help

sfgen will give a list of parameters when prompted using -h, or when invalid parameters are entered.

ds100 $ ./bin/sfgen 
sfgen - enzo structure function tool

Usage:  sfgen [-B <pdf bins>] [-b <bins>] [-p <pairs>] [-s <start>] [-e <end>] 
        [-o <output name>] [-S <seed>] [-g] [-A] [-l] [-D] [-d] <hierarchy name>

Options:

        -P    number of passes
                        default argument: 1
        -B    number of PDF bins
                        default argument: 100
        -b    number of bins
                        default argument: 10
        -p    number of point pairs
                        default argument: 65536
        -s    starting length
                        valid args:  0.0 to 1.0
                        default args: 2 x (root grid cell width)
        -e    ending length
                        valid args:  starting length to 1.0
                        default argument: 0.5
        -o    output name
                        default argument: <hierarchy name>.sf.PDF.<observable name>
        -S    random number generator seed
                        default argument: create a random seed
        -l    max analysis level
                        default argument: MaximumRefinementLevel
                        valid arguments: 0 to MaxLevel
        -a    linearly spaced bins (default is log)
        -L    load grid data at start
                        default argument: load grid data as needed
        -A    use MPI_Sendrecv instead of MPI_Alltoallv
        -g    plot results using gnuplot, if available, or write gnuplot script
                        default argument: don't plot or script
        -d    print debugging information
        -h    print help message

Example 1:  sfgen -b 43 -p 512 -s 0.0 -e 1.0 -l 2 -L RedshiftOutput0002
Example 2:  sfgen -o foo_sturctures RedshiftOutput0002

Example

Here's an example of running sfgen on a 10243 turbulence dataset, for 4 passes, setting an output name, and requesting gnuplot scripts, all on 16 MPI tasks.

ds100 $ poe ~/tmp/sfgen-benchmark/bin/sfgen -P 4 -o bench_t16 -g ts_1024ppmL0M6H5_0100 -nodes 2 -tasks_per_node 8 

Base Output

The most important output is the measured quantities, which are probability distribution functions of the differences of different quantities (e.g., density), at the specified distances.

If no output name is given with the -o flag, the parameter file name is used.

bench_t16.sf.PDF.density
bench_t16.sf.PDF.density_log
bench_t16.sf.PDF.p_l
bench_t16.sf.PDF.p_t
bench_t16.sf.PDF.u_l
bench_t16.sf.PDF.u_t
bench_t16.sf.PDF.v_l
bench_t16.sf.PDF.v_t
bench_t16.sf.PDF.w_l
bench_t16.sf.PDF.w_t

Gnuplot Scripts

With the -g flag, sfgen will either create plots (EPS) of the data, or dump out scripts for Gnuplot for each of the measured quantities. Which one it does is controlled at compile time with the HAVE_GNUPLOT macro. Plotting is off for the performance tests, since it needs to open a shell to pipe commands to Gnuplot, which is pretty slow. As a results, this example should also have the following files show up:

bench_t16.sf.PDF.density.gplt
bench_t16.sf.PDF.density_log.gplt
bench_t16.sf.PDF.p_l.gplt
bench_t16.sf.PDF.p_t.gplt
bench_t16.sf.PDF.u_l.gplt
bench_t16.sf.PDF.u_t.gplt
bench_t16.sf.PDF.v_l.gplt
bench_t16.sf.PDF.v_t.gplt
bench_t16.sf.PDF.w_l.gplt
bench_t16.sf.PDF.w_t.gplt

The following image can be generated using gnuplot bench_t16.sf.PDF.density.gplt. The default format is EPS, but this can be converted with ImageMagick, or by modifying the script.

Sample density PDF plot.

Attachments