Mistral

Institution DKRZ
Client Procs Per Node
Client Operating System
Client Operating System Version
Client Kernel Version

DATA SERVER

Storage Type
Volatile Memory
Storage Interface
Network
Software Version
OS Version

INFORMATION

Client Nodes 100
Client Total Procs 1,200
Metadata Nodes 0
Metadata Storage Devices 0
Data Nodes 0
Data Storage Devices 0

METADATA

Easy Write 11.77 kIOP/s
Easy Stat 46.84 kIOP/s
Easy Delete 5.25 kIOP/s
Hard Write 10.76 kIOP/s
Hard Read 19.00 kIOP/s
Hard Stat 43.55 kIOP/s
Hard Delete 6.33 kIOP/s

Submitted Files

io500
#!/bin/bash
#
# INSTRUCTIONS:
# Edit this file as needed for your machine.
# This simplified version is just for running on a single node.
# It is a simplified version of the site-configs/sandia/startup.sh which include SLURM directives.
# Most of the variables set in here are needed for io500_fixed.sh which gets sourced at the end of this.
# Please also edit 'extra_description' function.

set -euo pipefail  # better error handling

# turn these to True successively while you debug and tune this benchmark.
# for each one that you turn to true, go and edit the appropriate function.
# to find the function name, see the 'main' function.
# These are listed in the order that they run.
io500_run_ior_easy="True" # does the write phase and enables the subsequent read
io500_run_md_easy="True"  # does the creat phase and enables the subsequent stat
io500_run_ior_hard="True" # does the write phase and enables the subsequent read
io500_run_md_hard="True"  # does the creat phase and enables the subsequent read
io500_run_find="True"
io500_run_ior_easy_read="True"
io500_run_md_easy_stat="True"
io500_run_ior_hard_read="True"
io500_run_md_hard_stat="True"
io500_run_md_hard_read="True"
io500_run_md_easy_delete="True" # turn this off if you want to just run find by itself
io500_run_md_hard_delete="True" # turn this off if you want to just run find by itself
io500_run_mdreal="False"  # this one is optional
io500_cleanup_workdir="False"  # this flag is currently ignored. You'll need to clean up your data files manually if you want to.

# to run this benchmark, find and edit each of these functions.
# please also edit 'extra_description' function to help us collect the required data.
function main {
  setup_directories
  setup_paths
  setup_ior_easy # required if you want a complete score
  setup_ior_hard # required if you want a complete score
  setup_mdt_easy # required if you want a complete score
  setup_mdt_hard # required if you want a complete score
  setup_find     # required if you want a complete score
  setup_mdreal   # optional
  run_benchmarks
}

function setup_directories {
  # set directories for where the benchmark files are created and where the results will go.
  # If you want to set up stripe tuning on your output directories or anything similar, then this is good place to do it.
  timestamp=`date +%Y.%m.%d-%H.%M.%S`           # create a uniquifier
  io500_workdir=$PWD/datafiles/ # directory where the data will be stored
  io500_result_dir=$PWD/results/$timestamp      # the directory where the output results will be kept
  rm -rf $io500_workdir
  mkdir -p $io500_workdir $io500_result_dir
  mkdir -p $io500_workdir/ior_hard/
  lfs setstripe --stripe-count 124 $io500_workdir/ior_hard/IOR_file || true
  # Lustre 01
}

function setup_paths {
  # Set the paths to the binaries.  If you ran ./utilities/prepare.sh successfully, then binaries are in ./bin/
  io500_ior_cmd=$PWD/bin/ior
  io500_mdtest_cmd=$PWD/bin/mdtest
  io500_mdreal_cmd=$PWD/bin/md-real-io
  io500_mpirun="srun"
  io500_mpiargs="--ntasks-per-node=12 --distribution=block"
}

function setup_ior_easy {
  io500_ior_easy_params="-t 2048k -b 20g -F -a MPIIO" # 2M writes, 2 GB per proc, file per proc
}

function setup_mdt_easy {
  io500_mdtest_easy_params="-u -L" # unique dir per thread, files only at leaves
  io500_mdtest_easy_files_per_proc=3300
}

function setup_ior_hard {
  io500_ior_hard_writes_per_proc="6000 -a MPIIO -E"
}

function setup_mdt_hard {
  io500_mdtest_hard_files_per_proc=3300
}

function setup_find {
  #
  # setup the find command. This is an area where innovation is allowed.
  #    There are three default options provided. One is a serial find, one is python
  #    parallel version, one is C parallel version.  Current default is to use serial.
  #    But it is very slow. We recommend to either customize or use the C parallel version.
  #    For GPFS, we recommend to use the provided mmfind wrapper described below.
  #    Instructions below.
  #    If a custom approach is used, please provide enough info so others can reproduce.

  # the serial version that should run (SLOWLY) without modification
 io500_find_mpi="True"
 io500_find_cmd="$PWD/bin/pfind"
 io500_find_cmd_args="-s 3 -r $io500_result_dir/pfind_results"

  # a parallel version in C, the -s adds a stonewall
  #   for a real run, turn -s (stonewall) off or set it at 300 or more
  #   to prepare this (assuming you've run ./utilities/prepare.sh already):
  #   > cd build/pfind
  #   > ./prepare.sh
  #   > ./compile.sh
  #   > cp pfind ../../bin/
  #   If you use io500_find_mpi="True", then this will run with the same
  #   number of MPI nodes and ranks as the other phases.
  #   If you prefer another number, and fewer might be better here,
  #   Then you can set io500_find_mpi to be "False" and write a wrapper
  #   script for this which sets up MPI as you would like.  Then change
  #   io500_find_cmd to point to your wrapper script.
  #io500_find_mpi="True"
  #io500_find_cmd="$PWD/bin/pfind"
  #io500_find_cmd_args="-s 3 -r $io500_result_dir/pfind_results"

  # for GPFS systems, you should probably use the provided mmfind wrapper
  # if you used ./utilities/prepare.sh, you'll find this wrapper in ./bin/mmfind.sh
  #io500_find_mpi="False"
  #io500_find_cmd="$PWD/bin/mmfind.sh"
  #io500_find_cmd_args=""
}

function setup_mdreal {
  io500_mdreal_params="-P=5000 -I=1000"
}

function run_benchmarks {
  # Important: source the io500_fixed.sh script.  Do not change it. If you discover
  # a need to change it, please email the mailing list to discuss
  source ./utilities/io500_fixed.sh 2>&1 | tee $io500_result_dir/io-500-summary.$timestamp.txt
}

# Add key/value pairs defining your system
# Feel free to add extra ones if you'd like
function extra_description {
  io500_info_system_name='btlogin1'      # e.g. Oakforest-PACS
  io500_info_institute_name='DKRZ'   # e.g. JCAHPC
  io500_info_modules="module add intel mxm/3.4.3082 fca/2.5.2431 bullxmpi_mlx/bullxmpi_mlx-1.2.9.2"
}

main
ior_easy_read
IOR-3.1.0: MPI Coordinated Test of Parallel I/O

ior WARNING: fsync() only available in POSIX/MMAP.  Using value of 0.
Began: Sat May 12 14:23:30 2018
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/ior -r -R -C -Q 1 -g -G 27 -k -e -t 2048k -b 20g -F -a MPIIO -o /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_easy/ior_file_easy
Machine: Linux m20036

Test 0 started: Sat May 12 14:23:30 2018
Summary:
	api                = MPIIO (version=2, subversion=1)
	test filename      = /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_easy/ior_file_easy
	access             = file-per-process
	ordering in a file = sequential offsets
	ordering inter file= constant task offsets = 1
	clients            = 1200 (12 per node)
	repetitions        = 1
	xfersize           = 2 MiB
	blocksize          = 20 GiB
	aggregate filesize = 24000 GiB

access    bw(MiB/s)  block(KiB) xfer(KiB)  open(s)    wr/rd(s)   close(s)   total(s)   iter
------    ---------  ---------- ---------  --------   --------   --------   --------   ----
read      126356     20971520   2048.00    0.154707   194.08     0.407477   194.50     0   

Max Read:  126355.61 MiB/sec (132493.46 MB/sec)

Summary of all tests:
Operation   Max(MiB)   Min(MiB)  Mean(MiB)     StdDev   Max(OPs)   Min(OPs)  Mean(OPs)     StdDev    Mean(s) Test# #Tasks tPN reps fPP reord reordoff reordrand seed segcnt blksiz xsize aggsize API RefNum
read       126355.61  126355.61  126355.61       0.00   63177.81   63177.81   63177.81       0.00  194.49868 0 1200 12 1 1 1 1 0 0 1 21474836480 2097152 25769803776000 MPIIO 0

Finished: Sat May 12 14:26:48 2018
ior_easy_write
IOR-3.1.0: MPI Coordinated Test of Parallel I/O

ior WARNING: fsync() only available in POSIX/MMAP.  Using value of 0.
Began: Sat May 12 13:55:22 2018
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/ior -w -C -Q 1 -g -G 27 -k -e -t 2048k -b 20g -F -a MPIIO -o /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_easy/ior_file_easy
Machine: Linux m20036

Test 0 started: Sat May 12 13:55:22 2018
Summary:
	api                = MPIIO (version=2, subversion=1)
	test filename      = /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_easy/ior_file_easy
	access             = file-per-process
	ordering in a file = sequential offsets
	ordering inter file= constant task offsets = 1
	clients            = 1200 (12 per node)
	repetitions        = 1
	xfersize           = 2 MiB
	blocksize          = 20 GiB
	aggregate filesize = 24000 GiB

access    bw(MiB/s)  block(KiB) xfer(KiB)  open(s)    wr/rd(s)   close(s)   total(s)   iter
------    ---------  ---------- ---------  --------   --------   --------   --------   ----
write     41897      20971520   2048.00    0.362494   586.15     0.174346   586.58     0   

Max Write: 41897.31 MiB/sec (43932.52 MB/sec)

Summary of all tests:
Operation   Max(MiB)   Min(MiB)  Mean(MiB)     StdDev   Max(OPs)   Min(OPs)  Mean(OPs)     StdDev    Mean(s) Test# #Tasks tPN reps fPP reord reordoff reordrand seed segcnt blksiz xsize aggsize API RefNum
write       41897.31   41897.31   41897.31       0.00   20948.66   20948.66   20948.66       0.00  586.57700 0 1200 12 1 1 1 1 0 0 1 21474836480 2097152 25769803776000 MPIIO 0

Finished: Sat May 12 14:05:24 2018
ior_hard_read
IOR-3.1.0: MPI Coordinated Test of Parallel I/O

ior WARNING: fsync() only available in POSIX/MMAP.  Using value of 0.
Began: Sat May 12 14:28:34 2018
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/ior -r -R -C -Q 1 -g -G 27 -k -e -t 47008 -b 47008 -s 6000 -a MPIIO -E -o /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_hard/IOR_file
Machine: Linux m20036

Test 0 started: Sat May 12 14:28:34 2018
Summary:
	api                = MPIIO (version=2, subversion=1)
	test filename      = /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_hard/IOR_file
	access             = single-shared-file
	ordering in a file = sequential offsets
	ordering inter file= constant task offsets = 1
	clients            = 1200 (12 per node)
	repetitions        = 1
	xfersize           = 47008 bytes
	blocksize          = 47008 bytes
	aggregate filesize = 315.21 GiB

access    bw(MiB/s)  block(KiB) xfer(KiB)  open(s)    wr/rd(s)   close(s)   total(s)   iter
------    ---------  ---------- ---------  --------   --------   --------   --------   ----
read      5249       45.91      45.91      15.35      46.22      0.084992   61.49      0   

Max Read:  5249.23 MiB/sec (5504.21 MB/sec)

Summary of all tests:
Operation   Max(MiB)   Min(MiB)  Mean(MiB)     StdDev   Max(OPs)   Min(OPs)  Mean(OPs)     StdDev    Mean(s) Test# #Tasks tPN reps fPP reord reordoff reordrand seed segcnt blksiz xsize aggsize API RefNum
read         5249.23    5249.23    5249.23       0.00  117090.98  117090.98  117090.98       0.00   61.49065 0 1200 12 1 0 1 1 0 0 6000 47008 47008 338457600000 MPIIO 0

Finished: Sat May 12 14:29:35 2018
ior_hard_write
IOR-3.1.0: MPI Coordinated Test of Parallel I/O

ior WARNING: fsync() only available in POSIX/MMAP.  Using value of 0.
Began: Sat May 12 14:11:20 2018
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/ior -w -C -Q 1 -g -G 27 -k -e -t 47008 -b 47008 -s 6000 -a MPIIO -E -o /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_hard/IOR_file
Machine: Linux m20036

Test 0 started: Sat May 12 14:11:20 2018
Summary:
	api                = MPIIO (version=2, subversion=1)
	test filename      = /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//ior_hard/IOR_file
	access             = single-shared-file
	ordering in a file = sequential offsets
	ordering inter file= constant task offsets = 1
	clients            = 1200 (12 per node)
	repetitions        = 1
	xfersize           = 47008 bytes
	blocksize          = 47008 bytes
	aggregate filesize = 315.21 GiB

access    bw(MiB/s)  block(KiB) xfer(KiB)  open(s)    wr/rd(s)   close(s)   total(s)   iter
------    ---------  ---------- ---------  --------   --------   --------   --------   ----
write     1022.05    45.91      45.91      3.32       312.53     0.081773   315.82     0   

Max Write: 1022.05 MiB/sec (1071.69 MB/sec)

Summary of all tests:
Operation   Max(MiB)   Min(MiB)  Mean(MiB)     StdDev   Max(OPs)   Min(OPs)  Mean(OPs)     StdDev    Mean(s) Test# #Tasks tPN reps fPP reord reordoff reordrand seed segcnt blksiz xsize aggsize API RefNum
write        1022.05    1022.05    1022.05       0.00   22798.09   22798.09   22798.09       0.00  315.81591 0 1200 12 1 0 1 1 0 0 6000 47008 47008 338457600000 MPIIO 0

Finished: Sat May 12 14:16:36 2018
mdtest_easy_delete
-- started at 05/12/2018 14:31:30 --

mdtest-1.9.3 was launched with 1200 total task(s) on 100 node(s)
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/mdtest -r -F -d /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//mdt_easy -n 3300 -u -L
Path: /mnt/lustre01/work/k20200/k202079/io-500/io-500-dev/datafiles
FS: 20999.6 TiB   Used FS: 93.0%   Inodes: 5974.4 Mi   Used Inodes: 6.1%

1200 tasks, 3960000 files

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   File creation     :          0.000          0.000          0.000          0.000
   File stat         :          0.000          0.000          0.000          0.000
   File read         :          0.000          0.000          0.000          0.000
   File removal      :       5252.307       5252.307       5252.307          0.000
   Tree creation     :          0.000          0.000          0.000          0.000
   Tree removal      :          3.674          3.674          3.674          0.000

-- finished at 05/12/2018 14:44:05 --
mdtest_easy_stat
-- started at 05/12/2018 14:26:59 --

mdtest-1.9.3 was launched with 1200 total task(s) on 100 node(s)
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/mdtest -T -F -d /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//mdt_easy -n 3300 -u -L
Path: /mnt/lustre01/work/k20200/k202079/io-500/io-500-dev/datafiles
FS: 20999.6 TiB   Used FS: 93.0%   Inodes: 5974.4 Mi   Used Inodes: 6.1%

1200 tasks, 3960000 files

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   File creation     :          0.000          0.000          0.000          0.000
   File stat         :      46838.808      46838.808      46838.808          0.000
   File read         :          0.000          0.000          0.000          0.000
   File removal      :          0.000          0.000          0.000          0.000
   Tree creation     :          0.000          0.000          0.000          0.000
   Tree removal      :          0.000          0.000          0.000          0.000

-- finished at 05/12/2018 14:28:24 --
mdtest_easy_write
-- started at 05/12/2018 14:05:34 --

mdtest-1.9.3 was launched with 1200 total task(s) on 100 node(s)
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/mdtest -C -F -d /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//mdt_easy -n 3300 -u -L
Path: /mnt/lustre01/work/k20200/k202079/io-500/io-500-dev/datafiles
FS: 20999.6 TiB   Used FS: 93.0%   Inodes: 5974.4 Mi   Used Inodes: 6.0%

1200 tasks, 3960000 files

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   File creation     :      11770.644      11770.644      11770.644          0.000
   File stat         :          0.000          0.000          0.000          0.000
   File read         :          0.000          0.000          0.000          0.000
   File removal      :          0.000          0.000          0.000          0.000
   Tree creation     :         15.782         15.782         15.782          0.000
   Tree removal      :          0.000          0.000          0.000          0.000

-- finished at 05/12/2018 14:11:11 --
mdtest_hard_delete
-- started at 05/12/2018 14:47:55 --

mdtest-1.9.3 was launched with 1200 total task(s) on 100 node(s)
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/mdtest -r -t -F -w 3901 -e 3901 -d /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//mdt_hard -n 3300
Path: /mnt/lustre01/work/k20200/k202079/io-500/io-500-dev/datafiles
FS: 20999.6 TiB   Used FS: 93.0%   Inodes: 5974.4 Mi   Used Inodes: 6.0%

1200 tasks, 3960000 files

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   File creation     :          0.000          0.000          0.000          0.000
   File stat         :          0.000          0.000          0.000          0.000
   File read         :          0.000          0.000          0.000          0.000
   File removal      :       6334.661       6334.661       6334.661          0.000
   Tree creation     :          0.000          0.000          0.000          0.000
   Tree removal      :          5.843          5.843          5.843          0.000

-- finished at 05/12/2018 14:58:21 --
mdtest_hard_read
-- started at 05/12/2018 14:44:16 --

mdtest-1.9.3 was launched with 1200 total task(s) on 100 node(s)
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/mdtest -E -t -F -w 3901 -e 3901 -d /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//mdt_hard -n 3300
Path: /mnt/lustre01/work/k20200/k202079/io-500/io-500-dev/datafiles
FS: 20999.6 TiB   Used FS: 93.0%   Inodes: 5974.4 Mi   Used Inodes: 6.0%

1200 tasks, 3960000 files

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   File creation     :          0.000          0.000          0.000          0.000
   File stat         :          0.000          0.000          0.000          0.000
   File read         :      19001.604      19001.604      19001.604          0.000
   File removal      :          0.000          0.000          0.000          0.000
   Tree creation     :          0.000          0.000          0.000          0.000
   Tree removal      :          0.000          0.000          0.000          0.000

-- finished at 05/12/2018 14:47:45 --
mdtest_hard_stat
-- started at 05/12/2018 14:29:47 --

mdtest-1.9.3 was launched with 1200 total task(s) on 100 node(s)
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/mdtest -T -t -F -w 3901 -e 3901 -d /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//mdt_hard -n 3300
Path: /mnt/lustre01/work/k20200/k202079/io-500/io-500-dev/datafiles
FS: 20999.6 TiB   Used FS: 93.0%   Inodes: 5974.4 Mi   Used Inodes: 6.1%

1200 tasks, 3960000 files

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   File creation     :          0.000          0.000          0.000          0.000
   File stat         :      43548.165      43548.165      43548.165          0.000
   File read         :          0.000          0.000          0.000          0.000
   File removal      :          0.000          0.000          0.000          0.000
   Tree creation     :          0.000          0.000          0.000          0.000
   Tree removal      :          0.000          0.000          0.000          0.000

-- finished at 05/12/2018 14:31:19 --
mdtest_hard_write
-- started at 05/12/2018 14:16:47 --

mdtest-1.9.3 was launched with 1200 total task(s) on 100 node(s)
Command line used: /home/dkrz/k202079/work/io-500/io-500-dev/bin/mdtest -C -t -F -w 3901 -e 3901 -d /home/dkrz/k202079/work/io-500/io-500-dev/datafiles//mdt_hard -n 3300
Path: /mnt/lustre01/work/k20200/k202079/io-500/io-500-dev/datafiles
FS: 20999.6 TiB   Used FS: 93.0%   Inodes: 5974.4 Mi   Used Inodes: 6.0%

1200 tasks, 3960000 files

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   File creation     :      10756.924      10756.924      10756.924          0.000
   File stat         :          0.000          0.000          0.000          0.000
   File read         :          0.000          0.000          0.000          0.000
   File removal      :          0.000          0.000          0.000          0.000
   Tree creation     :       1834.779       1834.779       1834.779          0.000
   Tree removal      :          0.000          0.000          0.000          0.000

-- finished at 05/12/2018 14:22:56 --
result_summary
[RESULT] BW   phase 1            ior_easy_write               40.915 GB/s : time 586.58 seconds
[RESULT] IOPS phase 1         mdtest_easy_write               11.771 kiops : time 347.53 seconds
[RESULT] BW   phase 2            ior_hard_write                0.998 GB/s : time 315.82 seconds
[RESULT] IOPS phase 2         mdtest_hard_write               10.757 kiops : time 379.67 seconds
[RESULT] IOPS phase 3                      find               98.860 kiops : time  26.43 seconds
[RESULT] BW   phase 3             ior_easy_read              123.395 GB/s : time 194.50 seconds
[RESULT] IOPS phase 4          mdtest_easy_stat               46.839 kiops : time  95.95 seconds
[RESULT] BW   phase 4             ior_hard_read                5.126 GB/s : time  61.49 seconds
[RESULT] IOPS phase 5          mdtest_hard_stat               43.548 kiops : time 103.68 seconds
[RESULT] IOPS phase 6        mdtest_easy_delete                5.252 kiops : time 766.03 seconds
[RESULT] IOPS phase 7          mdtest_hard_read               19.002 kiops : time 219.82 seconds
[RESULT] IOPS phase 8        mdtest_hard_delete                6.335 kiops : time 635.81 seconds
[SCORE] Bandwidth 12.6775 GB/s : IOPS 18.8796 kiops : TOTAL 15.4708