Skip to content

Commit

Permalink
Switch to tracking wall time for metrics
Browse files Browse the repository at this point in the history
  • Loading branch information
EdmundGoodman committed Feb 25, 2024
1 parent fa66438 commit 5834ee9
Show file tree
Hide file tree
Showing 6 changed files with 24 additions and 26 deletions.
2 changes: 1 addition & 1 deletion src/hpc_multibench/run_configuration.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ def sbatch_contents(self) -> str:
sbatch_file += "\n".join(self.build_commands) + "\n"

sbatch_file += "\necho '===== RUN ====='\n"
sbatch_file += f"time {self.run_command} {self.args}\n"
sbatch_file += f"time -p {self.run_command} {self.args}\n"

return sbatch_file

Expand Down
6 changes: 4 additions & 2 deletions yaml_examples/example.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,10 +31,11 @@ benches:
"Mesh z size": "nz: (\\d+)"
"MPI Ranks": "=== RUN INSTANTIATION ===\n\\{.*run_command: mpirun -np (\\d+).*\\}"
"Total time (s)": "Time Summary:[\\s\\S]*Total\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "Strong Scaling Plot"
x: "Mesh z size"
y: "Total time (s)"
y: "Wall time (s)"
# roofline_plots:
# - title: "Strong Scaling Roofline"
# gflops_per_sec: "Mesh z size"
Expand Down Expand Up @@ -67,7 +68,8 @@ benches:
metrics:
"MPI Ranks": "=== RUN INSTANTIATION ===\n\\{.*run_command: mpirun -np (\\d+).*\\}"
"Total time (s)": "Time Summary:[\\s\\S]*Total\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "Weak Scaling Plot"
x: "MPI Ranks"
y: "Total time (s)"
y: "Wall time (s)"
3 changes: 2 additions & 1 deletion yaml_examples/kudu/cpp_kokkos_rust.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,8 @@ benches:
"ddot mflops": "MFLOPS Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)"
"waxpby mflops": "MFLOPS Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)"
"sparsemv mflops": "MFLOPS Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "C++, Kokkos, and Rust Version Comparison"
x: "Mesh x size"
y: "Total time (s)"
y: "Wall time (s)"
21 changes: 5 additions & 16 deletions yaml_examples/kudu/original_versions.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -70,26 +70,15 @@ benches:
matrix:
args:
- "100 100 100"
# - "300 300 300"
# - "500 500 500"
- "150 150 150"
- "200 200 200"
- "250 250 250"
analysis:
metrics:
"Mesh x size": "nx: (\\d+)"
"Mesh y size": "ny: (\\d+)"
"Mesh z size": "nz: (\\d+)"
"Total time (s)": "Time Summary:[\\s\\S]*Total\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"ddot time (s)": "Time Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"waxpby time (s)": "Time Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"sparsemv time (s)": "Time Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"Total flops": "FLOPS Summary:[\\s\\S]*Total\\s*: ([\\d\\.]+)[\\s\\S]*\nMFLOPS Summary"
"ddot flops": "FLOPS Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)[\\s\\S]*\nMFLOPS Summary"
"waxpby flops": "FLOPS Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)[\\s\\S]*\nMFLOPS Summary"
"sparsemv flops": "FLOPS Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)[\\s\\S]*\nMFLOPS Summary"
"Total mflops": "MFLOPS Summary:[\\s\\S]*Total\\s*: ([\\d\\.]+)"
"ddot mflops": "MFLOPS Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)"
"waxpby mflops": "MFLOPS Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)"
"sparsemv mflops": "MFLOPS Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "C++ Versions Comparison"
x: "Mesh x size"
y: "Total time (s)"
y: "Wall time (s)"
12 changes: 8 additions & 4 deletions yaml_examples/kudu/parallelism_strategies.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -147,10 +147,11 @@ benches:
"ddot mflops": "MFLOPS Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)"
"waxpby mflops": "MFLOPS Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)"
"sparsemv mflops": "MFLOPS Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "Reference Implementation Comparison"
x: "Mesh x size"
y: "Total time (s)"
y: "Wall time (s)"

"parallel":
run_configurations:
Expand Down Expand Up @@ -184,10 +185,11 @@ benches:
"ddot mflops": "MFLOPS Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)"
"waxpby mflops": "MFLOPS Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)"
"sparsemv mflops": "MFLOPS Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "Parallel Implementation Comparison"
x: "Mesh x size"
y: "Total time (s)"
y: "Wall time (s)"

# "mpi":
# run_configurations:
Expand Down Expand Up @@ -215,10 +217,11 @@ benches:
# "ddot mflops": "MFLOPS Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)"
# "waxpby mflops": "MFLOPS Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)"
# "sparsemv mflops": "MFLOPS Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)"
# "Wall time (s)": "real\\s([\\d\\.]+)\nuser"
# line_plots:
# - title: "MPI Implementation Comparison"
# x: "Mesh x size"
# y: "Total time (s)"
# y: "Wall time (s)"

# "hybrid":
# run_configurations:
Expand Down Expand Up @@ -253,7 +256,8 @@ benches:
# "ddot mflops": "MFLOPS Summary:[\\s\\S]*DDOT\\s*: ([\\d\\.]+)"
# "waxpby mflops": "MFLOPS Summary:[\\s\\S]*WAXPBY\\s*: ([\\d\\.]+)"
# "sparsemv mflops": "MFLOPS Summary:[\\s\\S]*SPARSEMV\\s*: ([\\d\\.]+)"
# "Wall time (s)": "real\\s([\\d\\.]+)\nuser"
# line_plots:
# - title: "MPI & Parallel Implementation Comparison"
# x: "Mesh x size"
# y: "Total time (s)"
# y: "Wall time (s)"
6 changes: 4 additions & 2 deletions yaml_examples/kudu/strong_weak_scaling.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,11 @@ benches:
"Mesh z size": "nz: (\\d+)"
"MPI Ranks": "=== RUN INSTANTIATION ===\n\\{.*run_command: mpirun -np (\\d+).*\\}"
"Total time (s)": "Time Summary:[\\s\\S]*Total\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "Strong Scaling Plot"
x: "Mesh z size"
y: "Total time (s)"
y: "Wall time (s)"

"weak-scaling":
run_configurations:
Expand All @@ -73,7 +74,8 @@ benches:
metrics:
"MPI Ranks": "=== RUN INSTANTIATION ===\n\\{.*run_command: mpirun -np (\\d+).*\\}"
"Total time (s)": "Time Summary:[\\s\\S]*Total\\s*: ([\\d\\.]+)[\\s\\S]*\nFLOPS Summary"
"Wall time (s)": "real\\s([\\d\\.]+)\nuser"
line_plots:
- title: "Weak Scaling Plot"
x: "MPI Ranks"
y: "Total time (s)"
y: "Wall time (s)"

0 comments on commit 5834ee9

Please sign in to comment.