sxs-collaboration / spectre

SpECTRE is a code for multi-scale, multi-physics problems in astrophysics and gravitational physics.
https://spectre-code.org
Other
159 stars 189 forks source link

Copy executables & Python / CLI for full pipeline #5951

Open nilsvu opened 5 months ago

nilsvu commented 5 months ago

Problem: resubmissions of possibly months-long simulations must not depend on the repo and the build directory, because both will change when updating the code and recompiling. We already copy the executable in Schedule.py, but we don't copy all executables of the pipeline yet. Discussed with @knelli2 today.

Specifically, when generating initial data with --evolve we need to copy executables for the evolution and ringdown to the run directory. This isn't too difficult because we know at initial data generation time if we want to evolve, so we can just copy the executables and use the new paths in the Next section of the ID input file. We just have to make sure the executables are statically linked (this is a separate issue and is necessary anyway).

Also, we have to copy Python dependencies for the resubmission scripts. This shouldn't be too difficulty either by using pip: we do python -m pip venv $RUN_DIR/env [--system-site-packages] to create a Python env in the run directory and then $RUN_DIR/bin/pip install $BUILD_DIR/bin/python/ to install our Python code.

nilsdeppe commented 4 months ago
knelli2 commented 4 months ago
nilsdeppe commented 4 months ago