From b3f187b10f69b5b378d77f09513680f14bda552b Mon Sep 17 00:00:00 2001 From: "Julian M. Kunkel" Date: Sat, 14 Mar 2026 17:54:54 +0100 Subject: [PATCH 1/4] Bugfix for new 4k read write - allow for shared file. --- src/phase_ior_easy.c | 6 +++--- src/phase_ior_rnd_read4k-easywrite.c | 8 +++++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/phase_ior_easy.c b/src/phase_ior_easy.c index 3b224a2..2edc888 100644 --- a/src/phase_ior_easy.c +++ b/src/phase_ior_easy.c @@ -54,9 +54,6 @@ void ior_easy_add_params(u_argv_t * argv, int addStdFlags){ u_argv_push(argv, "-O"); u_argv_push(argv, "allocateBufferOnGPU=1"); } - u_argv_push(argv, "-C"); /* reorder tasks in constant order for read */ - u_argv_push(argv, "-Q"); /* task per node offset */ - u_argv_push(argv, "1"); u_argv_push(argv, "-g"); /* barriers between open, read, write, close */ u_argv_push(argv, "-G"); /* use fixed timestamp signature */ int hash = u_phase_unique_random_number("ior-easy"); @@ -67,6 +64,9 @@ void ior_easy_add_params(u_argv_t * argv, int addStdFlags){ u_argv_push(argv, "-o"); /* filename for output file */ u_argv_push_printf(argv, "%s/ior-easy/ior_file_easy", opt.datadir); if(addStdFlags){ + u_argv_push(argv, "-C"); /* reorder tasks in constant order for read */ + u_argv_push(argv, "-Q"); /* task per node offset */ + u_argv_push(argv, "1"); u_argv_push(argv, "-O"); /* additional IOR options */ u_argv_push_printf(argv, "stoneWallingStatusFile=%s/ior-easy.stonewall", opt.resdir); u_argv_push(argv, "-t"); /* transfer size */ diff --git a/src/phase_ior_rnd_read4k-easywrite.c b/src/phase_ior_rnd_read4k-easywrite.c index 8715bc0..4b8dac0 100644 --- a/src/phase_ior_rnd_read4k-easywrite.c +++ b/src/phase_ior_rnd_read4k-easywrite.c @@ -27,7 +27,7 @@ static void validate(void){ static double run(void){ - opt_ior_rnd_read d = o; + opt_ior_easy d = ior_easy_o; u_argv_t * argv = u_argv_create(); ior_easy_add_params(argv, 0); @@ -44,6 +44,12 @@ static double run(void){ u_argv_push(argv, "-s=10000000"); u_argv_push(argv, "-O"); u_argv_push(argv, "stoneWallingWearOut=1"); + + if (d.filePerProc){ + u_argv_push(argv, "-C"); /* reorder tasks in constant order for read */ + u_argv_push(argv, "-Q"); /* task per node offset */ + u_argv_push(argv, "1"); + } o.command = u_flatten_argv(argv); From 74f3e76f01b186c2a47419b007684623c935a1c9 Mon Sep 17 00:00:00 2001 From: "Julian M. Kunkel" Date: Wed, 18 Mar 2026 18:06:41 +0100 Subject: [PATCH 2/4] Cherry pickign warning from #104. Thanks @jxiong --- src/phase_mdworkbench.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/phase_mdworkbench.c b/src/phase_mdworkbench.c index 1b14970..e01e5db 100644 --- a/src/phase_mdworkbench.c +++ b/src/phase_mdworkbench.c @@ -94,7 +94,9 @@ void mdworkbench_add_params(u_argv_t * argv, int is_create){ if(! f){ WARNING("Couldn't open mdworkbench-file: %s\n", file); }else{ - fread(& mdtest->rate, sizeof(mdtest->rate), 1, f); + if (fread(& mdtest->rate, sizeof(mdtest->rate), 1, f) != 1) { + WARNING("Failed to read mdworkbench-file: %s\n", file); + } } fclose(f); } From 35ae48a0c535393fad8eec2814b28671f7362685 Mon Sep 17 00:00:00 2001 From: "Julian M. Kunkel" Date: Wed, 1 Apr 2026 08:35:54 +0200 Subject: [PATCH 3/4] Support shifting one more node away for random read. --- prepare.sh | 2 +- src/phase_ior_rnd_read4k-easywrite.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/prepare.sh b/prepare.sh index ad29321..d48eccc 100755 --- a/prepare.sh +++ b/prepare.sh @@ -6,7 +6,7 @@ echo This script downloads the code for the benchmarks echo It will also attempt to build the benchmarks echo It will output OK at the end if builds succeed echo -IOR_HASH=8ab8f69b32b919 +IOR_HASH=4a34dfc PFIND_HASH=aaba722a178 INSTALL_DIR=$PWD diff --git a/src/phase_ior_rnd_read4k-easywrite.c b/src/phase_ior_rnd_read4k-easywrite.c index 4b8dac0..34d4aa8 100644 --- a/src/phase_ior_rnd_read4k-easywrite.c +++ b/src/phase_ior_rnd_read4k-easywrite.c @@ -47,6 +47,7 @@ static double run(void){ if (d.filePerProc){ u_argv_push(argv, "-C"); /* reorder tasks in constant order for read */ + u_argv_push(argv, "-C"); /* shift one more node away */ u_argv_push(argv, "-Q"); /* task per node offset */ u_argv_push(argv, "1"); } From 7a9ee464879ff8b706d0f2c8240d7f4639259495 Mon Sep 17 00:00:00 2001 From: "Julian M. Kunkel" Date: Fri, 3 Apr 2026 09:12:44 +0200 Subject: [PATCH 4/4] rnd read. Moving away using -Q option. --- src/phase_ior_rnd_read4k-easywrite.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/phase_ior_rnd_read4k-easywrite.c b/src/phase_ior_rnd_read4k-easywrite.c index 34d4aa8..19c3bc6 100644 --- a/src/phase_ior_rnd_read4k-easywrite.c +++ b/src/phase_ior_rnd_read4k-easywrite.c @@ -47,9 +47,8 @@ static double run(void){ if (d.filePerProc){ u_argv_push(argv, "-C"); /* reorder tasks in constant order for read */ - u_argv_push(argv, "-C"); /* shift one more node away */ u_argv_push(argv, "-Q"); /* task per node offset */ - u_argv_push(argv, "1"); + u_argv_push(argv, "2"); } o.command = u_flatten_argv(argv);