Users have expressed a wish to use different versions of the various binaries needed during the ground motion workflow.

In order to accomplish this we need a way of storing these different binary versions, a way for the user to specify which is to be used and for the workflow to use the appropriate binary.

Places that will want to use different binaries:

  • SRF generation
  • HF calculation
  • LF calculation

TODO:

  1. Ask Robin for a list of the tools that won't change
  2. Version the remainder by placing their version number after the file name in a defined format
  3. Create a CMake file for each binary that needs versioning Changed to one CMake with a flag to build each versioned binary
  4. Determine how SRF generation should take the requested version number from the user
  5. Implement SRF generationversioning Delayed for Pre Processing refactor
  6. Determine how the cybershake install process should take the requested version number from the user Will read root_params.yaml
  7. Implement versioning for HF and LF
  8. Determine where in the qcore library versioned tools are being used
  9. Determine how these parts should receive user input for which binary version to use
  10. Modify all occurances of tools_dir in slurm_gm_workflow to use the new binary_version function
  11. Load tools_dir version from yaml templates
  12. Test slurm_gm_workflow with new binary_version on maui

Tools to be versioned:

EMOD3D

  • Will be named emod3d-mpi_v<version>

HF tools (binmod and np2mm+ in particular)

  • Will be named hb_high_binmod_v<version>
  • Will be named hb_high_np2mm+_v<version>

Genslip

  • Will be named genslip_v<version>

Where version is generally of the form X.Y.Z where each of X, Y, Z are normally integers

Tools that won't change:

Everything else in the folder

Build method

One CMake exists for all tools found in the tools repository.

The required tools can be built using the -DTOOL_TO_MAKE=<tool> flag, where tool is one of:

  • tools, for non-versioned tools
  • emod3d, for versioned emod3d (lf) tools
  • hf, for versioned high frequency tools
  • genslip, for versioned genslip tools
  • all, to build all tools. This is the default option.


How differenct versions of binary file is used in slurm_gm_workflow

*tools_dir path: /nesi/project/nesi00213/opt/$machine/hybrid_sim_tools

*name conversion: see Tools to be versioned section.

  • No labels