Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Set WORKING_DIRECTORY for benchmarks #1236

Merged
merged 7 commits into from
Sep 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cmake/blt
20 changes: 16 additions & 4 deletions src/docs/sphinx/dev_guide/profiling.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Introduction to SPOT
--------------------

`SPOT <https://software.llnl.gov/news/2021/01/07/spot-new>`_ is a framework developed at
LLNL for vizualizing performance data. SPOT is an external tool and does not need to be
LLNL for visualizing performance data. SPOT is an external tool and does not need to be
linked into Serac.

TPL Build Instructions
Expand Down Expand Up @@ -121,9 +121,21 @@ with benchmarking enabled (off by default). Then, run the build target ``run_ben
cd <serac build location>
make -j
make run_benchmarks
find . -name "*.cali" -print0 | xargs -0 mv -t .
pwd
This will run all of Serac's benchmarks multiple times with varying MPI task counts, and generate a Caliper file for
each benchmark run. The ``find`` command afterwards ensures all Caliper files are moved to the same directory. Now, you
can visualize the results with SPOT, entering the path printed from ``pwd``.
each benchmark run at ``PROJECT_BINARY_DIR``. Now, you can visualize the results with SPOT, entering the path printed
from ``pwd``.

Visualizing Benchmarks using SPOT
---------------------------------

If you have access to LC, you can go to the following website and enter a directory in CZ/ RZ that contains Caliper
files:

- `SPOT CZ <https://lc.llnl.gov/spot2>`_
- `SPOT RZ <https://rzlc.llnl.gov/spot2>`_

.. note::
There is a bug in SPOT where if you remove Caliper files from a directory, they still show up on SPOT - if you've
visualized them previously. The current workaround is by removing the ``llnl.gov`` site cache manually.
1 change: 1 addition & 0 deletions src/serac/physics/benchmarks/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ foreach(physics_benchmark ${physics_benchmark_targets})
blt_add_benchmark(NAME ${physics_benchmark}_${task_count}_task_count
COMMAND ${physics_benchmark}
NUM_MPI_TASKS ${task_count}
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
)
endforeach()
endforeach()