Difference between revisions of "Benchmarking: IOR"

From Define Wiki
Jump to navigation Jump to search
 
Line 1: Line 1:
 +
Download from: http://sourceforge.net/projects/ior-sio/ (wget http://downloads.sourceforge.net/project/ior-sio/IOR%20latest/IOR-2.10.3/IOR-2.10.3.tgz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fior-sio%2F&ts=1361978337&use_mirror=switch)
 +
 
Untar IOR-2.10.3.tar.gz and cd into the created dir.
 
Untar IOR-2.10.3.tar.gz and cd into the created dir.
  

Latest revision as of 15:16, 27 February 2013

Download from: http://sourceforge.net/projects/ior-sio/ (wget http://downloads.sourceforge.net/project/ior-sio/IOR%20latest/IOR-2.10.3/IOR-2.10.3.tgz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fior-sio%2F&ts=1361978337&use_mirror=switch)

Untar IOR-2.10.3.tar.gz and cd into the created dir.


Change the first two lines in the LINUX SETTINGS section of the file:

vi IOR-2.10.1/src/C/Makefile.config

Set the CC compiler to your preferred MPI

# default
# CC.Linux = mpiicc
CC.Linux = /opt/openmpi/gnu/gin/mpicc

To compile and create the IOR executable; run:

[viglen@headnode C]$ make mpiio 
mpicc -g -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -c IOR.c
mpicc -g -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -c utilities.c
mpicc -g -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -c parse_options.c
mpicc -g -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -c aiori-POSIX.c
mpicc -c aiori-MPIIO.c
mpicc -g -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -c aiori-noHDF5.c
mpicc -g -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -c aiori-noNCMPI.c
mpicc -o IOR IOR.o utilities.o parse_options.o \
		aiori-POSIX.o aiori-MPIIO.o aiori-noHDF5.o aiori-noNCMPI.o \
		 -lm 
[viglen@headnode IOR-2.10.1]$ file src/C/IOR
src/C/IOR: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped

Executable will be stored in the ../IOR-2.10.1/src/C directory. To run;

./IOR -vv -k -wWr -C -F -i4 -t 256k -b 10m -s574 -o /path/to-my/testfile 

mpirun -np 2 -hostlist "comp00 comp01" ./ior-pmpi -vv -t 256k -b 500m  -o /mnt/lustre/iorfile

# -vv    verbose
# -k     keep files after test
# -F     one file per process
# -i N   number of iternations
# -t N   transfer size (256k, 1m, 1g) 
# -b N   blocksize (must be multiple of transfer size,

Run just write or read tests:

# write only test:
mpirun -np 2  -hostlist "comp00 comp01" ./ior-pmpi -k -wW -F -t1m -b500m -o /mnt/lustre/iorfile

# flush caches before read tests (as root);
sync; echo 3 > /proc/sys/vm/drop_caches

# read only test, needs to have iorfiles in place from write with -k
mpirun -np 2  -hostlist "comp00 comp01" ./ior-pmpi -k -rR -F -t1m -b500m -o /mnt/lustre/iorfile