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

Task/2024 08 renaming replay ser and replay mpi #1372

Merged
merged 2 commits into from
Aug 29, 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
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@ and this project aspires to adhere to [Semantic Versioning](https://semver.org/s
- Added `near_plane` and `far_plane` to the camera details provided in Ascent::info()
- Added `add_mpi_ranks` and `add_domain_ids` filters for adding rank and domain fields to a mesh

### Changed
- Changed the replay utility's binary names such that `replay_ser` is now `ascent_replay` and `raplay_mpi` is now `ascent_replay_mpi`. This will help prevent potential name collisions with other tools that also have replay utilities.

### Fixed
- Resolved a few cases where MPI_COMM_WORLD was used instead instead of the selected MPI communicator.
- Resolved a bug where a sharing a coordset between multiple polytopal topologies would corrupt mesh processing.
Expand Down
18 changes: 9 additions & 9 deletions src/docs/sphinx/Utilities.rst
Original file line number Diff line number Diff line change
Expand Up @@ -101,8 +101,8 @@ How Do I Use It?
Replay executables are created in the ``utilities/replay`` directory of the installation or build.
There are two versions of replay:

* ``replay_ser``: a serial (non-MPI) version
* ``replay_mpi``: an MPI version
* ``ascent_replay``: a serial (non-MPI) version
* ``ascent_replay_mpi``: an MPI version

The options for replay are:

Expand All @@ -114,9 +114,9 @@ Example launches:

.. code:: bash

./replay_ser --root=clover.cycle_000060.root --actions=my_actions.json
srun -n 8 ./replay_mpi --root=clover.cycle_000060.root --actions=my_actions.json
srun -n 8 ./replay_mpi --cycles=cycles_list.txt --actions=my_actions.json
./ascent_replay --root=clover.cycle_000060.root --actions=my_actions.json
srun -n 8 ./ascent_replay_mpi --root=clover.cycle_000060.root --actions=my_actions.json
srun -n 8 ./ascent_replay_mpi --cycles=cycles_list.txt --actions=my_actions.json

The cycles files list is a text file containing one root file per line:

Expand All @@ -132,7 +132,7 @@ Replay will loop over these files in the order in which they appear in the file.

Domain Overloading
^^^^^^^^^^^^^^^^^^
Each root file can point to any number of domains. When launching ``replay_mpi``,
Each root file can point to any number of domains. When launching ``ascent_replay_mpi``,
you can specify any number of ranks less than or equal to the number of domains.
Replay will automatically domain overload. For example if there were 100 domains and
replay is launched with 50 ranks, then each rank will load 2 domains.
Expand Down Expand Up @@ -266,8 +266,8 @@ paste your yaml into the site and validate if the syntax is correct.
Running Replay
^^^^^^^^^^^^^^
We have created an actions file and now we want to run it.
We have two choices: use the mpi version ``replay_mpi`` or the serial
version ``replay_ser``. What you use depends on the data set, but since our
We have two choices: use the mpi version ``ascent_replay_mpi`` or the serial
version ``ascent_replay``. What you use depends on the data set, but since our
sample data size is small, the serial version will work just fine.


Expand All @@ -277,7 +277,7 @@ yaml actions file is called ``ascent_actions.yaml``.

.. code:: bash

./replay_ser --cycles=clover_cycles --actions=ascent_actions.yaml
./ascent_replay --cycles=clover_cycles --actions=ascent_actions.yaml

The result produces 20 images, but Ascent emits warnings:

Expand Down
16 changes: 8 additions & 8 deletions src/utilities/replay/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ endif()

if (ENABLE_SERIAL)
blt_add_executable(
NAME replay_ser
NAME ascent_replay
SOURCES ${REPLAY_SOURCES}
DEPENDS_ON ${replay_deps}
OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})

# install target for replay serial
install(TARGETS replay_ser
install(TARGETS ascent_replay
EXPORT ascent
LIBRARY DESTINATION utilities/ascent/replay
ARCHIVE DESTINATION utilities/ascent/replay
Expand All @@ -37,21 +37,21 @@ endif()

if(MPI_FOUND)

set(replay_mpi_deps ascent_mpi mpi)
set(ascent_replay_mpi_deps ascent_mpi mpi)
if(OPENMP_FOUND)
list(APPEND replay_mpi_deps openmp)
list(APPEND ascent_replay_mpi_deps openmp)
endif()

blt_add_executable(
NAME replay_mpi
NAME ascent_replay_mpi
SOURCES ${REPLAY_SOURCES}
DEPENDS_ON ${replay_mpi_deps}
DEPENDS_ON ${ascent_replay_mpi_deps}
OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR})

blt_add_target_compile_flags(TO replay_mpi FLAGS "-DASCENT_REPLAY_MPI=1")
blt_add_target_compile_flags(TO ascent_replay_mpi FLAGS "-DASCENT_REPLAY_MPI=1")

# install target for replay mpi
install(TARGETS replay_mpi
install(TARGETS ascent_replay_mpi
EXPORT ascent
LIBRARY DESTINATION utilities/ascent/replay
ARCHIVE DESTINATION utilities/ascent/replay
Expand Down
6 changes: 3 additions & 3 deletions src/utilities/replay/replay.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ void usage()
std::cout<<" --actions : a yaml file containing ascent actions. Default value\n";
std::cout<<" is 'ascent_actions.yaml'.\n\n";
std::cout<<"======================== Examples =========================\n";
std::cout<<"./replay_ser --root=clover.cycle_000060.root\n";
std::cout<<"./replay_ser --root=clover.cycle_000060.root --actions=my_actions.yaml\n";
std::cout<<"srun -n 4 replay_mpi --cycles=cycles_file\n";
std::cout<<"./ascent_replay --root=clover.cycle_000060.root\n";
std::cout<<"./ascent_replay --root=clover.cycle_000060.root --actions=my_actions.yaml\n";
std::cout<<"srun -n 4 ascent_replay_mpi --cycles=cycles_file\n";
std::cout<<"\n\n";
}

Expand Down