From 4a0f55d6b78219450aad91b1890cf2c7da2e020c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B3hannes=20Nordal?= <johannesnordal88@gmail.com> Date: Tue, 14 Nov 2023 23:46:51 +0000 Subject: [PATCH] update: new interface --- Python_CLI/README.md | 176 --------- Python_CLI/__pycache__/parse.cpython-310.pyc | Bin 0 -> 6584 bytes Python_CLI/examples/create_example.json | 5 +- Python_CLI/lamec_ml | 280 --------------- Python_CLI/old_lamec_ml | 333 ------------------ README.md | 1 - lamec | 168 +++++++++ .../DDP_startscript.sh | 0 scripts/{CTEAMD_DDP => cteamd_ddp}/README.md | 0 .../{CTEAMD_DDP => cteamd_ddp}/createENV.sh | 0 .../installWheels.sh | 0 scripts/cteamd_ddp/lamec.json | 1 + scripts/{CTEAMD_DDP => cteamd_ddp}/reqs.txt | 0 .../DS_config.json | 0 .../DS_startscript.sh | 0 .../README.md | 0 .../createENV.sh | 0 .../installWheels.sh | 0 scripts/cteamd_deepspeed/lamec.json | 1 + .../reqs.txt | 0 .../HeAT_startscript.sh | 0 .../{CTEAMD_HeAT => cteamd_heat}/README.md | 0 .../{CTEAMD_HeAT => cteamd_heat}/createENV.sh | 0 .../installWheels.sh | 0 scripts/cteamd_heat/lamec.json | 1 + scripts/{CTEAMD_HeAT => cteamd_heat}/reqs.txt | 0 .../Hor_startscript.sh | 0 .../README.md | 0 .../createENV.sh | 0 .../installWheels.sh | 0 scripts/cteamd_horovod/lamec.json | 1 + .../reqs.txt | 0 .../.gitkeep | 0 .../basilisk_cfd.sh | 0 scripts/cyclone_basilisk/lamec.json | 1 + .../.gitkeep | 0 .../FNO_launch.sh | 0 scripts/cyclone_horovod/lamec.json | 1 + .../DDP_startscript_deep.sh | 0 scripts/{Deep_DDP => deep_ddp}/README.md | 0 scripts/{Deep_DDP => deep_ddp}/conda_torch.sh | 0 scripts/{Deep_DDP => deep_ddp}/createEnv.sh | 0 scripts/deep_ddp/lamec.json | 1 + scripts/{Deep_DDP => deep_ddp}/reqs.txt | 0 .../DS_config.json | 0 .../DS_startscript_deep.sh | 0 .../README.md | 0 .../createEnv.sh | 0 scripts/deep_deepspeed/lamec.json | 1 + .../reqs.txt | 0 .../HeAT_startscript_deep.sh | 0 scripts/{Deep_HeAT => deep_heat}/README.md | 0 scripts/{Deep_HeAT => deep_heat}/createEnv.sh | 0 .../example_mnist_heat.py | 0 scripts/deep_heat/lamec.json | 1 + scripts/{Deep_HeAT => deep_heat}/reqs.txt | 0 .../Hor_startscript_deep.sh | 0 .../{Deep_Horovod => deep_horovod}/README.md | 0 .../createEnv.sh | 0 scripts/deep_horovod/lamec.json | 1 + .../pytorch_mnist.py | 0 .../pytorch_synthetic_benchmark.py | 0 .../{Deep_Horovod => deep_horovod}/reqs.txt | 0 .../Create_Jupyter_deepv.ipynb | 0 .../README.md | 0 .../TF_startscript_deep.sh | 0 .../createEnv_TF.sh | 0 .../jupyterAddKernel.sh | 0 .../jupyterCreateKernel.sh | 0 scripts/deep_tensorflow/lamec.json | 1 + .../tensorflow2_synthetic_benchmark.py | 0 .../DDP_startscript.sh | 0 .../DDP_startscript_container.sh | 0 scripts/{Jureca_DDP => jureca_ddp}/README.md | 0 .../createContainer.sh | 0 .../{Jureca_DDP => jureca_ddp}/createEnv.sh | 0 .../createEnv_MPI.sh | 0 .../fixed_torch_run.py | 0 scripts/jureca_ddp/lamec.json | 1 + scripts/{Jureca_DDP => jureca_ddp}/reqs.txt | 0 .../DS_config.json | 0 .../DS_startscript_deep.sh | 0 .../README.md | 0 .../createEnv.sh | 0 scripts/jureca_deepspeed/lamec.json | 1 + .../reqs.txt | 0 .../GC_pytorch_mnist.py | 0 .../GC_startscript.sh | 0 .../README.md | 0 scripts/jureca_graphcore/lamec.json | 1 + .../HeAT_startscript_deep.sh | 0 .../{Jureca_HeAT => jureca_heat}/README.md | 0 .../{Jureca_HeAT => jureca_heat}/createEnv.sh | 0 scripts/jureca_heat/lamec.json | 1 + scripts/{Jureca_HeAT => jureca_heat}/reqs.txt | 0 .../Hor_startscript_deep.sh | 0 .../README.md | 0 .../createEnv.sh | 0 scripts/jureca_horovod/lamec.json | 1 + .../reqs.txt | 0 .../MNIST/CMakeLists.txt | 0 .../MNIST/LibTorch_startscript.sh | 0 .../MNIST/compile.sh | 0 .../MNIST/download_mnist.py | 0 .../MNIST/mnist.cpp | 0 .../README.md | 0 .../TorchVision/compile_jpeg.sh | 0 .../TorchVision/compile_png.sh | 0 .../TorchVision/compile_torchvision.sh | 0 scripts/jureca_libtorch/lamec.json | 1 + .../.gitkeep | 0 .../README.md | 0 .../RayTune+DDP/.gitkeep | 0 .../RayTune+DDP/cifar_tune.py | 0 .../RayTune+DDP/create_env.sh | 0 .../RayTune+DDP/jureca_ray_ddp_startscript.sh | 0 .../Ray_2.4/.gitkeep | 0 .../Ray_2.4/ASHA/.gitkeep | 0 .../Ray_2.4/ASHA/cifar_tune_asha.py | 0 .../Ray_2.4/ASHA/jureca_ray_startscript.sh | 0 .../Ray_2.4/BOHB/.gitkeep | 0 .../Ray_2.4/BOHB/cifar_tune_bohb.py | 0 .../Ray_2.4/BOHB/jureca_ray_startscript.sh | 0 .../Ray_2.4/PBT/.gitkeep | 0 .../Ray_2.4/PBT/cifar_tune_pbt.py | 0 .../Ray_2.4/PBT/jureca_ray_startscript.sh | 0 .../Ray_2.4/build_ray_env.sh | 0 .../Ray_2.4/hpo.md | 0 .../Ray_2.4/hpo.py | 0 .../cifar_tune.py | 0 .../cifar_tune_tf.py | 0 .../create_jureca_env.sh | 0 .../jureca_run_ray.sh | 0 scripts/{Juwels_DDP => juwels_ddp}/README.md | 0 .../container_batch.sh | 0 .../container_build.sh | 0 .../container_env.sh | 0 .../{Juwels_DDP => juwels_ddp}/createEnv.sh | 0 .../{Juwels_DDP => juwels_ddp}/env_batch.sh | 0 .../{Juwels_DDP => juwels_ddp}/env_build.sh | 0 .../fixed_torch_run.py | 0 .../install_pyDDP.sh | 0 scripts/juwels_ddp/lamec.json | 1 + scripts/{Juwels_DDP => juwels_ddp}/reqs.txt | 0 .../Autoencoder_Turbulence.py | 0 .../Autoencoder_Turbulence_PINNs.py | 0 .../Autoencoder_Turbulence_horv.py | 0 .../Autoencoder_Turbulence_olddata.py | 0 .../Autoencoder_Turbulence_serial.py | 0 .../CAE_loss_serial_vs_par.pdf | Bin .../CAE_serial.pdf | Bin .../startScript | 0 .../startScript_horovod | 0 .../startScript_serial | 0 scripts/{LUMI_DDP => lumi_ddp}/README.md | 0 .../{LUMI_DDP => lumi_ddp}/container_build.sh | 0 .../{LUMI_DDP => lumi_ddp}/container_env.sh | 0 .../container_startscript.sh | 0 scripts/{LUMI_DDP => lumi_ddp}/env_build.sh | 0 .../{LUMI_DDP => lumi_ddp}/env_startscript.sh | 0 scripts/lumi_ddp/lamec.json | 1 + scripts/{LUMI_DDP => lumi_ddp}/reqs.txt | 0 .../{PizDa_DDP => pizda_ddp}/DDP_startscript | 0 scripts/{PizDa_DDP => pizda_ddp}/createENV.sh | 0 scripts/pizda_ddp/lamec.json | 1 + scripts/{PizDa_DDP => pizda_ddp}/reqs.txt | 0 scripts/{Rudens_DDP => rudens_ddp}/.gitkeep | 0 scripts/{Rudens_DDP => rudens_ddp}/rtu_run.sh | 0 .../rtu_run_schedule.sh | 0 scripts/{VSC_DDP => vega_basilisk}/.gitkeep | 0 .../basilisk_cfd.sh | 0 .../basilisk_pde.sh | 0 scripts/vega_basilisk/lamec.json | 1 + scripts/{Vega_ Basilisk => vsc_ddp}/.gitkeep | 0 scripts/{VSC_DDP => vsc_ddp}/dam_ex.job | 0 scripts/{VSC_DDP => vsc_ddp}/dam_tune_ex.job | 0 scripts/{VSC_DDP => vsc_ddp}/raise_nn.def | 0 scripts/{VSC_DDP => vsc_ddp}/wice_ex.job | 0 178 files changed, 191 insertions(+), 793 deletions(-) delete mode 100644 Python_CLI/README.md create mode 100644 Python_CLI/__pycache__/parse.cpython-310.pyc delete mode 100755 Python_CLI/lamec_ml delete mode 100644 Python_CLI/old_lamec_ml delete mode 100644 README.md create mode 100755 lamec rename scripts/{CTEAMD_DDP => cteamd_ddp}/DDP_startscript.sh (100%) rename scripts/{CTEAMD_DDP => cteamd_ddp}/README.md (100%) rename scripts/{CTEAMD_DDP => cteamd_ddp}/createENV.sh (100%) rename scripts/{CTEAMD_DDP => cteamd_ddp}/installWheels.sh (100%) create mode 100644 scripts/cteamd_ddp/lamec.json rename scripts/{CTEAMD_DDP => cteamd_ddp}/reqs.txt (100%) rename scripts/{CTEAMD_DeepSpeed => cteamd_deepspeed}/DS_config.json (100%) rename scripts/{CTEAMD_DeepSpeed => cteamd_deepspeed}/DS_startscript.sh (100%) rename scripts/{CTEAMD_DeepSpeed => cteamd_deepspeed}/README.md (100%) rename scripts/{CTEAMD_DeepSpeed => cteamd_deepspeed}/createENV.sh (100%) rename scripts/{CTEAMD_DeepSpeed => cteamd_deepspeed}/installWheels.sh (100%) create mode 100644 scripts/cteamd_deepspeed/lamec.json rename scripts/{CTEAMD_DeepSpeed => cteamd_deepspeed}/reqs.txt (100%) rename scripts/{CTEAMD_HeAT => cteamd_heat}/HeAT_startscript.sh (100%) rename scripts/{CTEAMD_HeAT => cteamd_heat}/README.md (100%) rename scripts/{CTEAMD_HeAT => cteamd_heat}/createENV.sh (100%) rename scripts/{CTEAMD_HeAT => cteamd_heat}/installWheels.sh (100%) create mode 100644 scripts/cteamd_heat/lamec.json rename scripts/{CTEAMD_HeAT => cteamd_heat}/reqs.txt (100%) rename scripts/{CTEAMD_Horovod => cteamd_horovod}/Hor_startscript.sh (100%) rename scripts/{CTEAMD_Horovod => cteamd_horovod}/README.md (100%) rename scripts/{CTEAMD_Horovod => cteamd_horovod}/createENV.sh (100%) rename scripts/{CTEAMD_Horovod => cteamd_horovod}/installWheels.sh (100%) create mode 100644 scripts/cteamd_horovod/lamec.json rename scripts/{CTEAMD_Horovod => cteamd_horovod}/reqs.txt (100%) rename scripts/{Cyclone_Horovod => cyclone_basilisk}/.gitkeep (100%) rename scripts/{Cyclone_basilisk => cyclone_basilisk}/basilisk_cfd.sh (100%) create mode 100644 scripts/cyclone_basilisk/lamec.json rename scripts/{Cyclone_basilisk => cyclone_horovod}/.gitkeep (100%) rename scripts/{Cyclone_Horovod => cyclone_horovod}/FNO_launch.sh (100%) create mode 100644 scripts/cyclone_horovod/lamec.json rename scripts/{Deep_DDP => deep_ddp}/DDP_startscript_deep.sh (100%) rename scripts/{Deep_DDP => deep_ddp}/README.md (100%) rename scripts/{Deep_DDP => deep_ddp}/conda_torch.sh (100%) rename scripts/{Deep_DDP => deep_ddp}/createEnv.sh (100%) create mode 100644 scripts/deep_ddp/lamec.json rename scripts/{Deep_DDP => deep_ddp}/reqs.txt (100%) rename scripts/{Deep_DeepSpeed => deep_deepspeed}/DS_config.json (100%) rename scripts/{Deep_DeepSpeed => deep_deepspeed}/DS_startscript_deep.sh (100%) rename scripts/{Deep_DeepSpeed => deep_deepspeed}/README.md (100%) rename scripts/{Deep_DeepSpeed => deep_deepspeed}/createEnv.sh (100%) create mode 100644 scripts/deep_deepspeed/lamec.json rename scripts/{Deep_DeepSpeed => deep_deepspeed}/reqs.txt (100%) rename scripts/{Deep_HeAT => deep_heat}/HeAT_startscript_deep.sh (100%) rename scripts/{Deep_HeAT => deep_heat}/README.md (100%) rename scripts/{Deep_HeAT => deep_heat}/createEnv.sh (100%) rename scripts/{Deep_HeAT => deep_heat}/example_mnist_heat.py (100%) create mode 100644 scripts/deep_heat/lamec.json rename scripts/{Deep_HeAT => deep_heat}/reqs.txt (100%) rename scripts/{Deep_Horovod => deep_horovod}/Hor_startscript_deep.sh (100%) rename scripts/{Deep_Horovod => deep_horovod}/README.md (100%) rename scripts/{Deep_Horovod => deep_horovod}/createEnv.sh (100%) create mode 100644 scripts/deep_horovod/lamec.json rename scripts/{Deep_Horovod => deep_horovod}/pytorch_mnist.py (100%) rename scripts/{Deep_Horovod => deep_horovod}/pytorch_synthetic_benchmark.py (100%) rename scripts/{Deep_Horovod => deep_horovod}/reqs.txt (100%) rename scripts/{Deep_TensorFlow => deep_tensorflow}/Create_Jupyter_deepv.ipynb (100%) rename scripts/{Deep_TensorFlow => deep_tensorflow}/README.md (100%) rename scripts/{Deep_TensorFlow => deep_tensorflow}/TF_startscript_deep.sh (100%) rename scripts/{Deep_TensorFlow => deep_tensorflow}/createEnv_TF.sh (100%) rename scripts/{Deep_TensorFlow => deep_tensorflow}/jupyterAddKernel.sh (100%) rename scripts/{Deep_TensorFlow => deep_tensorflow}/jupyterCreateKernel.sh (100%) create mode 100644 scripts/deep_tensorflow/lamec.json rename scripts/{Deep_TensorFlow => deep_tensorflow}/tensorflow2_synthetic_benchmark.py (100%) rename scripts/{Jureca_DDP => jureca_ddp}/DDP_startscript.sh (100%) rename scripts/{Jureca_DDP => jureca_ddp}/DDP_startscript_container.sh (100%) rename scripts/{Jureca_DDP => jureca_ddp}/README.md (100%) rename scripts/{Jureca_DDP => jureca_ddp}/createContainer.sh (100%) rename scripts/{Jureca_DDP => jureca_ddp}/createEnv.sh (100%) rename scripts/{Jureca_DDP => jureca_ddp}/createEnv_MPI.sh (100%) rename scripts/{Jureca_DDP => jureca_ddp}/fixed_torch_run.py (100%) create mode 100644 scripts/jureca_ddp/lamec.json rename scripts/{Jureca_DDP => jureca_ddp}/reqs.txt (100%) rename scripts/{Jureca_DeepSpeed => jureca_deepspeed}/DS_config.json (100%) rename scripts/{Jureca_DeepSpeed => jureca_deepspeed}/DS_startscript_deep.sh (100%) rename scripts/{Jureca_DeepSpeed => jureca_deepspeed}/README.md (100%) rename scripts/{Jureca_DeepSpeed => jureca_deepspeed}/createEnv.sh (100%) create mode 100644 scripts/jureca_deepspeed/lamec.json rename scripts/{Jureca_DeepSpeed => jureca_deepspeed}/reqs.txt (100%) rename scripts/{Jureca_Graphcore => jureca_graphcore}/GC_pytorch_mnist.py (100%) rename scripts/{Jureca_Graphcore => jureca_graphcore}/GC_startscript.sh (100%) rename scripts/{Jureca_Graphcore => jureca_graphcore}/README.md (100%) create mode 100644 scripts/jureca_graphcore/lamec.json rename scripts/{Jureca_HeAT => jureca_heat}/HeAT_startscript_deep.sh (100%) rename scripts/{Jureca_HeAT => jureca_heat}/README.md (100%) rename scripts/{Jureca_HeAT => jureca_heat}/createEnv.sh (100%) create mode 100644 scripts/jureca_heat/lamec.json rename scripts/{Jureca_HeAT => jureca_heat}/reqs.txt (100%) rename scripts/{Jureca_Horovod => jureca_horovod}/Hor_startscript_deep.sh (100%) rename scripts/{Jureca_Horovod => jureca_horovod}/README.md (100%) rename scripts/{Jureca_Horovod => jureca_horovod}/createEnv.sh (100%) create mode 100644 scripts/jureca_horovod/lamec.json rename scripts/{Jureca_Horovod => jureca_horovod}/reqs.txt (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/MNIST/CMakeLists.txt (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/MNIST/LibTorch_startscript.sh (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/MNIST/compile.sh (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/MNIST/download_mnist.py (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/MNIST/mnist.cpp (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/README.md (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/TorchVision/compile_jpeg.sh (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/TorchVision/compile_png.sh (100%) rename scripts/{Jureca_LibTorch => jureca_libtorch}/TorchVision/compile_torchvision.sh (100%) create mode 100644 scripts/jureca_libtorch/lamec.json rename scripts/{Jureca_RayTune => jureca_raytune}/.gitkeep (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/README.md (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/RayTune+DDP/.gitkeep (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/RayTune+DDP/cifar_tune.py (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/RayTune+DDP/create_env.sh (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/RayTune+DDP/jureca_ray_ddp_startscript.sh (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/.gitkeep (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/ASHA/.gitkeep (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/ASHA/cifar_tune_asha.py (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/ASHA/jureca_ray_startscript.sh (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/BOHB/.gitkeep (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/BOHB/cifar_tune_bohb.py (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/BOHB/jureca_ray_startscript.sh (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/PBT/.gitkeep (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/PBT/cifar_tune_pbt.py (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/PBT/jureca_ray_startscript.sh (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/build_ray_env.sh (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/hpo.md (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/Ray_2.4/hpo.py (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/cifar_tune.py (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/cifar_tune_tf.py (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/create_jureca_env.sh (100%) rename scripts/{Jureca_RayTune => jureca_raytune}/jureca_run_ray.sh (100%) rename scripts/{Juwels_DDP => juwels_ddp}/README.md (100%) rename scripts/{Juwels_DDP => juwels_ddp}/container_batch.sh (100%) rename scripts/{Juwels_DDP => juwels_ddp}/container_build.sh (100%) rename scripts/{Juwels_DDP => juwels_ddp}/container_env.sh (100%) rename scripts/{Juwels_DDP => juwels_ddp}/createEnv.sh (100%) rename scripts/{Juwels_DDP => juwels_ddp}/env_batch.sh (100%) rename scripts/{Juwels_DDP => juwels_ddp}/env_build.sh (100%) rename scripts/{Juwels_DDP => juwels_ddp}/fixed_torch_run.py (100%) rename scripts/{Juwels_DDP => juwels_ddp}/install_pyDDP.sh (100%) create mode 100644 scripts/juwels_ddp/lamec.json rename scripts/{Juwels_DDP => juwels_ddp}/reqs.txt (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/Autoencoder_Turbulence.py (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/Autoencoder_Turbulence_PINNs.py (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/Autoencoder_Turbulence_horv.py (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/Autoencoder_Turbulence_olddata.py (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/Autoencoder_Turbulence_serial.py (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/CAE_loss_serial_vs_par.pdf (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/CAE_serial.pdf (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/startScript (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/startScript_horovod (100%) rename scripts/{Juwels_Turbulence => juwels_turbulence}/startScript_serial (100%) rename scripts/{LUMI_DDP => lumi_ddp}/README.md (100%) rename scripts/{LUMI_DDP => lumi_ddp}/container_build.sh (100%) rename scripts/{LUMI_DDP => lumi_ddp}/container_env.sh (100%) rename scripts/{LUMI_DDP => lumi_ddp}/container_startscript.sh (100%) rename scripts/{LUMI_DDP => lumi_ddp}/env_build.sh (100%) rename scripts/{LUMI_DDP => lumi_ddp}/env_startscript.sh (100%) create mode 100644 scripts/lumi_ddp/lamec.json rename scripts/{LUMI_DDP => lumi_ddp}/reqs.txt (100%) rename scripts/{PizDa_DDP => pizda_ddp}/DDP_startscript (100%) rename scripts/{PizDa_DDP => pizda_ddp}/createENV.sh (100%) create mode 100644 scripts/pizda_ddp/lamec.json rename scripts/{PizDa_DDP => pizda_ddp}/reqs.txt (100%) rename scripts/{Rudens_DDP => rudens_ddp}/.gitkeep (100%) rename scripts/{Rudens_DDP => rudens_ddp}/rtu_run.sh (100%) rename scripts/{Rudens_DDP => rudens_ddp}/rtu_run_schedule.sh (100%) rename scripts/{VSC_DDP => vega_basilisk}/.gitkeep (100%) rename scripts/{Vega_ Basilisk => vega_basilisk}/basilisk_cfd.sh (100%) rename scripts/{Vega_ Basilisk => vega_basilisk}/basilisk_pde.sh (100%) create mode 100644 scripts/vega_basilisk/lamec.json rename scripts/{Vega_ Basilisk => vsc_ddp}/.gitkeep (100%) rename scripts/{VSC_DDP => vsc_ddp}/dam_ex.job (100%) rename scripts/{VSC_DDP => vsc_ddp}/dam_tune_ex.job (100%) rename scripts/{VSC_DDP => vsc_ddp}/raise_nn.def (100%) rename scripts/{VSC_DDP => vsc_ddp}/wice_ex.job (100%) diff --git a/Python_CLI/README.md b/Python_CLI/README.md deleted file mode 100644 index 8992cc8..0000000 --- a/Python_CLI/README.md +++ /dev/null @@ -1,176 +0,0 @@ -# lamec_ml: job script generator - -*currently in prototype stage.* - -Automatically generate module statements based on software dependencies. -Current support: - -+ **DEEP** - - DDP - - HeAT - - DeepSpeed - - Horovod - - TensorFlow -+ **JURECA** - - DDP - - DeepSpeed - - HeAT - - Horovod - - RayTune -+ **JUWELS** - - DDP -+ **LUMI** - - DDP -+ **VEGA** - - Basilisk - -## Requirements - -TODO. - -## Installation - -TODO. - -## lamec_ml usage - -``` -./lamec_ml --help -``` - -displays the command line interface: - -``` -usage: ./lamec_ml [-h] <access token> {eval,gen} ... - -positional arguments: - {eval,gen} - eval evaluate directives in a script - gen generate a module block - -options: - -h, --help show this help message and exit -``` - -## Gen sub-command - -``` -./lamec_ml gen --help -``` - -displays the command line interface for the `gen` sub-command: - -``` -usage: ./lamec_ml gen [-h] <access token> [-o OUTPUT] system software [software ...] - -positional arguments: - access token access token - system name of system - software list of software - -options: - -h, --help show this help message and exit - -o OUTPUT, --output OUTPUT - write to file -``` - -The `gen` sub-command allows users to generate module statements based on `system` and `software`. - -``` -./lamec_ml gen <access token> deep ddp heat -``` - -outputs - -``` -#MODULES BEGIN deep ddp,heat -ml --force purge -ml use $OTHERSTAGES -ml Stages/2022 GCC/11.2.0 OpenMPI/4.1.2 cuDNN/8.3.1.22-CUDA-11.5 NCCL/2.11.4-CUDA-11.5 Python/3.9.6 -#MODULES END -``` - -The `gen` sub-command generates a *module block* which opens with `#MODULES BEGIN system software` and closes with `#MODULES END`. -These are called directives and can be further manipulated with the `eval` sub-command. - -## Eval sub-command - -The `eval` sub-command evaluates directives in a script by parsing the module directives. - -``` -./lamec_ml eval --help -``` - -displays the command line interface for the `eval` sub-command - -``` -usage: ./lamec_ml eval [-h] <access token> [--add-software ADD_SOFTWARE [ADD_SOFTWARE ...]] [--remove-software REMOVE_SOFTWARE] [--alt-system ALT_SYSTEM] [-o OUTPUT] - script - -positional arguments: - script script containing directives to be evaluated - -options: - -h, --help show this help message and exit - --add-software ADD_SOFTWARE [ADD_SOFTWARE ...] - add new software - --remove-software REMOVE_SOFTWARE - remove software - --alt-system ALT_SYSTEM - use an alternative system - -o OUTPUT, --output OUTPUT - write to file -``` - -If we have the following script called `myscript.sh` - -``` -#SBATCH... - -#MODULES BEGIN jureca raytune -ml --force purge -ml Stages/2022 GCC/11.2.0 OpenMPI/4.1.2 PyTorch/1.11-CUDA-11.5 torchvision/0.12.0-CUDA-11.5 -#MODULES END -``` - -then - -``` -./lamec_ml eval <access token> --add-software=ddp myscript.sh -``` - -outputs - -``` -#MODULES BEGIN jureca raytune,ddp -ml --force purge -ml Stages/2022 GCC/11.2.0 OpenMPI/4.1.2 PyTorch/1.11-CUDA-11.5 torchvision/0.12.0-CUDA-11.5 NVHPC/22.3 ParaStationMPI/5.5.0-1-mt NCCL/2.12.7-1-CUDA-11.5 cuDNN/8.3.1.22-CUDA-11.5 Python/3.9.6 libaio/0.3.112 HDF5/1.12.1-serial mpi-settings/CUDA -#MODULES END -``` - -which can be written directly to a file using the `-o` option. The `--remove-software` and `--alt-system` work the same way. - -Additionally, users can simply add a module directive into their script themselves - -``` -#SBATCH... - -#MODULES BEGIN jureca raytune -#MODULES END -``` - -and - -``` -./lamec_ml eval <access token> myscript.sh -``` - -will evaluate the directives - -``` -#MODULES BEGIN deep ddp -ml --force purge -ml use $OTHERSTAGES -ml Stages/2022 GCC/11.2.0 OpenMPI/4.1.2 cuDNN/8.3.1.22-CUDA-11.5 NCCL/2.11.4-CUDA-11.5 Python/3.9.6 -#MODULES END -``` diff --git a/Python_CLI/__pycache__/parse.cpython-310.pyc b/Python_CLI/__pycache__/parse.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d87064478207762a263f7b815ad784a1ee499639 GIT binary patch literal 6584 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 SA;Q7VA;-bWp}--|BMAVkrzLU# literal 0 HcmV?d00001 diff --git a/Python_CLI/examples/create_example.json b/Python_CLI/examples/create_example.json index 2dcf489..310ba13 100644 --- a/Python_CLI/examples/create_example.json +++ b/Python_CLI/examples/create_example.json @@ -1,9 +1,8 @@ { - "which": "create", "account": "johndoe@johndoe.com", - "time": "00:10:00", "nodes": "1", + "partition": "dp-esb", "system": "deep", "software": "ddp", - "exe": "test.py" + "executable": "test.py" } diff --git a/Python_CLI/lamec_ml b/Python_CLI/lamec_ml deleted file mode 100755 index d67cc93..0000000 --- a/Python_CLI/lamec_ml +++ /dev/null @@ -1,280 +0,0 @@ -#!/usr/bin/env python3 - -# need to: pip install --upgrade python-gitlab - -import gitlab -import sys -import json - -class Module: - """ - Global variables - """ - BEGIN = '#MODULES BEGIN ' - END = '#MODULES END' - -def read_access_to_repository(): - return gitlab \ - .Gitlab(url='https://gitlab.jsc.fz-juelich.de') \ - .projects \ - .get('CoE-RAISE/FZJ/lamec-oa') - -def fetch_startscript(system, software, repo): - # TODO: make a pull request to standardize the naming convention - # - # if using DEEP and DDP the path should be: - # - # deep/ddp_startscript.sh - # - # I assume that python-gitlab throws an exception if the path doesn't exist. - - path = None - system = system.lower() - software = software.lower() - - if system == 'deep': - if software == 'ddp': - path = 'scripts/Deep_DDP/DDP_startscript_deep.sh' - elif software == 'deepspeed': - path = 'scripts/Deep_DeepSpeed/DS_startscript_deep.sh' - elif software == 'heat': - path = 'scripts/Deep_HeAT/HeAT_startscript_deep.sh' - elif software == 'horovod': - path = 'scripts/Deep_Horovod/Hor_startscript_deep.sh' - elif software == 'tensorflow': - path = 'scripts/Deep_TensorFlow/TF_startscript_deep.sh' - elif system == 'jureca': - if software == 'ddp': - path = 'scripts/Jureca_DDP/DDP_startscript.sh' - elif software == 'deepspeed': - path = 'scripts/Jureca_DeepSpeed/DS_startscript_deep.sh' - elif software == 'heat': - path = 'scripts/Jureca_HeAT/HeAT_startscript_deep.sh' - elif software == 'horovod': - path = 'scripts/Jureca_Horovod/Hor_startscript_deep.sh' - elif software == 'graphcore': - path = 'scripts/Jureca_Graphcore/GC_startscript.sh' - elif software == 'raytune': - path = 'scripts/Jureca_RayTune/jureca_run_ray.sh' - elif system == 'juwels': - if software == 'ddp': - path = 'scripts/Juwels_DDP/env_batch.sh' - elif system == 'lumi': - if software == 'ddp': - path = 'scripts/LUMI_DDP/env_startscript.sh' - elif system == 'vega': - if software == 'basilisk': - path = 'scripts/Vega_ Basilisk/basilisk_pde.sh' - - - # Software is not supported - if path is None: - print('\'%s\' is not supported for \'%s\'' % \ - (software, system), file=sys.stderr) - sys.exit(1) - - return repo.files.get(file_path=path, ref='main').decode().decode('utf-8') - -def new_module_commands(): - return {'purge': set(), 'use': set(), 'modules': list()} - -def parse_module_commands(startscript: str, module_commands: dict): - - def is_module_keyword(token: str): - return token == 'module' or token == 'ml' - - lines = startscript.splitlines() - for line in lines: - tokens = line.split() - if len(tokens) != 0 and is_module_keyword(tokens[0]): - if 'purge' in tokens: - module_commands['purge'].add(line.strip()) - elif 'use' in tokens: - module_commands['use'].add(line.strip()) - else: - for t in tokens: - if not is_module_keyword(t): - if t not in module_commands['modules']: - module_commands['modules'].append(t) - -def generate_module_statements(system, software, repo): - module_commands = new_module_commands() - - startscript = fetch_startscript(system, software, repo) - parse_module_commands(startscript, module_commands) - - module_statements = '' - for purge in module_commands['purge']: - module_statements += (purge + '\n') - - for use in module_commands['use']: - module_statements += (use + '\n') - - module_statements += 'ml' - for module in module_commands['modules']: - module_statements += (' ' + module) - module_statements += '\n' - - return module_statements - -def generate_module_block(system, software, repo): - module_block = Module.BEGIN - module_block += (system + ' ' + software + '\n') - module_block += generate_module_statements(system, software, repo) - module_block += (Module.END + '\n\n') - return module_block - -def eval_module_directives(args, repo): - has_begin = False - has_end = False - lines = args.script.split('\n') - for line in lines: - if Module.BEGIN in line: - has_begin = True - if Module.END in line: - has_end = True - - # file doesn't contain a valid module block - if not (has_begin and has_end): - return args.script - - script = '' - skip_line = False - for line in lines: - if Module.BEGIN in line: - #TODO: handle error when there is no software specified. - system, software = line.strip().replace(Module.BEGIN, '').split(' ') - script += generate_module_block(system, software, repo) - skip_line = True - elif Module.END in line: - skip_line = False - else: - if not skip_line: - script += (line + '\n') - - return script - -def update_command(args): - repo = read_access_to_repository() - script = eval_module_directives(args, repo) - print(script, end='') - -def generate_param_block(args): - if args.system == 'jureca': - partition = 'dc-gpu' - gpus_pernode = 4 - elif args.system == 'juwels': - partition = 'dc-gpu' - gpus_pernode = 4 - elif args.system == 'deep': - partition = 'dc-gpu' - gpus_pernode = 1 - else: - partition = '' - gpus_pernode = 1 - - if args.software == 'ddp': - ntask_pernode = 1 - else: - ntask_pernode = gpus_pernode - - param_block = '#!/bin/bash\n' - param_block += '#SBATCH --job-name=job\n' + '#SBATCH --output=job.out\n' + '#SBATCH --error=job.err\n' - param_block += '#SBATCH --account=' + str(args.account) + '\n' - param_block += '#SBATCH --partition=' + partition + '\n' - param_block += '#SBATCH --nodes=' + str(args.nodes) + '\n' - param_block += '#SBATCH --gpus-per-node=' + str(gpus_pernode) + '\n' - param_block += '#SBATCH --ntasks-per-node=' + str(ntask_pernode) + '\n' - param_block += '#SBATCH --cpus-per-task=1' + '\n' - param_block += '#SBATCH --exclusive' + '\n' - param_block += '#SBATCH --gres=gpu:' + str(gpus_pernode) + '\n\n' - - return param_block - -def generate_env_block(system, software, repo): - #environment variable, export 1.CUDA_VISIBLE_DEVICES - #source python venv - env_block = '' - startscript = fetch_startscript(system, software, repo) - lines = startscript.splitlines() - for line in lines: - tokens = line.split() - if len(tokens) > 1 and tokens[0] == 'export' and 'CUDA_VISIBLE_DEVICES' in tokens[1]: - env_block += line.strip() - - env_block += '\n' - if system == 'jureca' and software == 'ddp': - env_block += 'source your/env_path/bin/activate\n' - elif system == 'deep' and software == 'ddp': - env_block += 'source your/env_path/bin/activate\n' - elif system == 'juwels': - env_block += 'source your/env_path/bin/activate\n' - else: - env_block += 'source your/env_path/bin/activate\n' - - return env_block - -def generate_launch_block(exe, system, software, repo): - system = system.lower() - launch_block = '\n' - def keyword_exist(tokens=list()): - keywords=['srun','nnodes','nproc_per_node','rdzv'] - result = False - for kw in keywords: - result = True in (kw in item for item in tokens) - if result == True: - break - - return result - - software = software.lower() - if software == 'ddp': - startscript = fetch_startscript(system, software, repo) - lines = startscript.splitlines() - for line in lines: - tokens = line.split() - if len(tokens)!=0 and '#' not in tokens[0] and keyword_exist(tokens): - launch_block +=line + '\n' - launch_block += (exe +'"') - launch_block += '\n' - return launch_block - -def create_command(args): - repo = read_access_to_repository() - param_block = generate_param_block(args) - module_block = generate_module_block(args.system, args.software, repo) - env_block = generate_env_block(args.system, args.software, repo) - launch_block = generate_launch_block(args.exe, args.system, args.software, repo) - outp = param_block + module_block + env_block + launch_block - print(outp, end='') - -class Args(object): - - def __init__(self, argv): - - if len(argv) == 1: - data = sys.stdin - args = json.load(data) - else: - args = json.loads(argv[1]) - - for arg in args: - setattr(self, arg, args[arg]) - - if args['which'] == "create": - args['software'].lower() - args['system'].lower() - -def main(): - - args = Args(sys.argv) - - if args.which == 'create': - create_command(args) - elif args.which == 'update': - update_command(args) - - sys.exit(0) - -if __name__ == '__main__': - main() diff --git a/Python_CLI/old_lamec_ml b/Python_CLI/old_lamec_ml deleted file mode 100644 index b13b805..0000000 --- a/Python_CLI/old_lamec_ml +++ /dev/null @@ -1,333 +0,0 @@ -#!/usr/bin/env python3 - -# need to: pip install --upgrade python-gitlab - -import gitlab -import sys, socket -import argparse - -class Module: - """ - Global variables - """ - BEGIN = '#MODULES BEGIN ' - END = '#MODULES END' - -def read_access_to_repository(): - return gitlab \ - .Gitlab(url='https://gitlab.jsc.fz-juelich.de') \ - .projects \ - .get('CoE-RAISE/FZJ/lamec-oa') - -def fetch_startscript(system: str, software: str, repo: str) -> str: - # TODO: make a pull request to standardize the naming convention - # - # if using DEEP and DDP the path should be: - # - # deep/ddp_startscript.sh - # - # I assume that python-gitlab throws an exception if the path doesn't exist. - - path = None - software = software.lower() - system = system.lower() - - if system == 'deep': - if software == 'ddp': - path = 'scripts/Deep_DDP/DDP_startscript_deep.sh' - elif software == 'deepspeed': - path = 'scripts/Deep_DeepSpeed/DS_startscript_deep.sh' - elif software == 'heat': - path = 'scripts/Deep_HeAT/HeAT_startscript_deep.sh' - elif software == 'horovod': - path = 'scripts/Deep_Horovod/Hor_startscript_deep.sh' - elif software == 'tensorflow': - path = 'scripts/Deep_TensorFlow/TF_startscript_deep.sh' - elif system == 'jureca': - if software == 'ddp': - path = 'scripts/Jureca_DDP/DDP_startscript.sh' - elif software == 'deepspeed': - path = 'scripts/Jureca_DeepSpeed/DS_startscript_deep.sh' - elif software == 'heat': - path = 'scripts/Jureca_HeAT/HeAT_startscript_deep.sh' - elif software == 'horovod': - path = 'scripts/Jureca_Horovod/Hor_startscript_deep.sh' - elif software == 'graphcore': - path = 'scripts/Jureca_Graphcore/GC_startscript.sh' - elif software == 'raytune': - path = 'scripts/Jureca_RayTune/jureca_run_ray.sh' - elif system == 'juwels': - if software == 'ddp': - path = 'scripts/Juwels_DDP/env_batch.sh' - elif system == 'lumi': - if software == 'ddp': - path = 'scripts/LUMI_DDP/env_startscript.sh' - elif system == 'vega': - if software == 'basilisk': - path = 'scripts/Vega_ Basilisk/basilisk_pde.sh' - # Software is not supported - if path is None: - print('\'%s\' is not supported for \'%s\'' % \ - (software, system), file=sys.stderr) - sys.exit(1) - - return repo.files.get(file_path=path, ref='main').decode().decode('utf-8') - -def new_module_commands(): - return {'purge': set(), 'use': set(), 'modules': list()} - -def parse_module_commands(startscript: str, module_commands: dict): - - def is_module_keyword(token: str): - return token == 'module' or token == 'ml' - - lines = startscript.splitlines() - for line in lines: - tokens = line.split() - if len(tokens) != 0 and is_module_keyword(tokens[0]): - if 'purge' in tokens: - module_commands['purge'].add(line.strip()) - elif 'use' in tokens: - module_commands['use'].add(line.strip()) - else: - for t in tokens: - if not is_module_keyword(t): - if t not in module_commands['modules']: - module_commands['modules'].append(t) - -def generate_module_statements(system: str, software=list()): - repo = read_access_to_repository() - module_commands = new_module_commands() - - for sw in software: - startscript = fetch_startscript(system, sw, repo) - parse_module_commands(startscript, module_commands) - - module_statements = '' - for purge in module_commands['purge']: - module_statements += (purge + '\n') - - for use in module_commands['use']: - module_statements += (use + '\n') - - module_statements += 'ml' - for module in module_commands['modules']: - module_statements += (' ' + module) - module_statements += '\n' - - return module_statements - -def generate_module_block(system: str, software=list()): - module_block = Module.BEGIN - module_block += (system + ' ') - n = len(software) - 1 - for i, s in enumerate(software): - if i != n: - module_block += (s + ',') - else: - module_block += (s + '\n') - module_block += generate_module_statements(system, software) - module_block += (Module.END + '\n\n') - return module_block - -def eval_module_directives(script: str, add_software=[], remove_software=[], alt_system=None): - has_begin = False - has_end = False - with open(script, 'r') as f: - lines = f.readlines() - for line in lines: - if Module.BEGIN in line: - has_begin = True - if Module.END in line: - has_end = True - - if not (has_begin and has_end): - return - - module_block = '' - skip_line = False - for line in lines: - if Module.BEGIN in line: - #TODO: handle error when there is no software specified. - system, software = line.strip().replace(Module.BEGIN, '').split(' ') - if alt_system: - system = alt_system - software = software.split(',') - for s in add_software: - if s not in software: - software.append(s) - software = [s for s in software if s not in remove_software] - module_block += generate_module_block(system, software) - skip_line = True - elif Module.END in line: - skip_line = False - else: - if not skip_line: - module_block += line - - return module_block - -def eval_command(args): - alt_system = None - add_software = list() - remove_software = list() - if args.alt_system: - alt_system = args.alt_system - if args.add_software: - add_software = args.add_software - if args.remove_software: - remove_software = args.remove_software - module_block = eval_module_directives(args.script, add_software, remove_software, alt_system) - if args.output: - with open(args.output, 'w') as f: - f.write(module_block) - else: - print(module_block, end='') - -def generate_param_block(args): - partition = args.partition - if args.system == 'jureca': - gpus_pernode = 4 - elif args.system == 'juwels': - gpus_pernode = 4 - elif args.system == 'deep': - gpus_pernode = 1 - else: - gpus_pernode = 1 - - if args.software == 'ddp': - ntask_pernode = 1 - else: - ntask_pernode = gpus_pernode - - param_block = '#!/bin/bash\n' - param_block += '#SBATCH --job-name=job\n' + '#SBATCH --output=job.out\n' + '#SBATCH --error=job.err\n' - param_block += '#SBATCH --account=' + str(args.account) + '\n' - param_block += '#SBATCH --partition=' + partition + '\n' - param_block += '#SBATCH --nodes=' + str(args.nnode) + '\n' - param_block += '#SBATCH --gpus-per-node=' + str(gpus_pernode) + '\n' - param_block += '#SBATCH --ntasks-per-node=' + str(ntask_pernode) + '\n' - param_block += '#SBATCH --cpus-per-task=1' + '\n' - param_block += '#SBATCH --exclusive' + '\n' - param_block += '#SBATCH --gres=gpu:' + str(gpus_pernode) + '\n\n' - - return param_block - -def generate_env_block(system: str, software=list()): - #environment variable, export 1.CUDA_VISIBLE_DEVICES - #source python venv - repo = read_access_to_repository() - sw = software[0] #for now!!! - env_block = '' - startscript = fetch_startscript(system, sw, repo) - lines = startscript.splitlines() - for line in lines: - tokens = line.split() - if len(tokens) > 1 and tokens[0] == 'export' and 'CUDA_VISIBLE_DEVICES' in tokens[1]: - env_block += line.strip() - - env_block += '\n' - if system == 'jureca' and sw == 'ddp': - env_block += 'source your/env_path/bin/activate\n' - elif system == 'deep' and sw == 'ddp': - env_block += 'source your/env_path/bin/activate\n' - elif system == 'juwels': - env_block += 'source your/env_path/bin/activate\n' - else: - env_block += 'source your/env_path/bin/activate\n' - - return env_block - -def generate_launch_block(exe:str,system: str, software=list()): - system = system.lower() - repo = read_access_to_repository() - launch_block = '\n' - def keyword_exist(tokens=list()): - keywords=['srun','nnodes','nproc_per_node','rdzv'] - result = False - for kw in keywords: - result = True in (kw in item for item in tokens) - if result == True: - break - - return result - - for sw in software: - sw = sw.lower() - if sw == 'ddp': - startscript = fetch_startscript(system, sw, repo) - lines = startscript.splitlines() - for line in lines: - tokens = line.split() - if len(tokens)!=0 and '#' not in tokens[0] and keyword_exist(tokens): - launch_block +=line + '\n' - launch_block += exe +'"' - else: #!!! - launch_block += 'srun ' + exe - - #!!!launch_block += exe +'"' - launch_block += '\n' - return launch_block - -def gen_command(args): - module_block = generate_module_block(args.system, args.software) - - param_block = generate_param_block(args) - env_block = generate_env_block(args.system, args.software) - launch_block=generate_launch_block(args.exe,args.system, args.software) - outp = param_block + module_block + env_block + launch_block - - if args.output: - with open(args.output, 'w') as f: - f.write(outp) - else: - print(outp, end='') - -def main(): - - cli = argparse.ArgumentParser(prog=sys.argv[0]) - - sub = cli.add_subparsers() - - cli_eval = sub.add_parser('eval', help='evaluate directives in a script') - cli_gene = sub.add_parser('gen', help='generate a module block') - - cli_eval.set_defaults(which='eval') - cli_gene.set_defaults(which='gen') - - cli_eval.add_argument('script', help='script containing directives to be evaluated') - cli_eval.add_argument('--add-software', help='add new software', nargs='+') - cli_eval.add_argument('--remove-software', help='remove software') - cli_eval.add_argument('--alt-system', help='use an alternative system') - cli_eval.add_argument('-o', '--output', help='write to file') - - cli_gene.add_argument('-a','--account', default=' ', help='') #!!! - cli_gene.add_argument('--wall_time', default='00:10:00', help='') - cli_gene.add_argument('-n','--nnode', default=' ', help='fill in number of nodes')#!!! - cli_gene.add_argument('-e','--exe', default='exe.py', help='') #!!! - - cli_gene.add_argument('-sys','--system', help='name of system') - cli_gene.add_argument('-par','--partition', help='name of partition') - cli_gene.add_argument('-sw','--software', help='list of software', nargs='+') - cli_gene.add_argument('-o', '--output', help='write to file') - - args = cli.parse_args() - - if args.software[0] == 'Pytorch-DDP': - args.software[0] = 'ddp' - - args.software[0] = args.software[0].lower() - args.system = args.system.lower() - - if args.system == None: #!!! - args.system = socket.gethostname().split('.')[-1] - - if args.which == 'eval': - eval_command(args) - elif args.which == 'gen': - gen_command(args) - - sys.exit(0) - -if __name__ == '__main__': - main() diff --git a/README.md b/README.md deleted file mode 100644 index 8b13789..0000000 --- a/README.md +++ /dev/null @@ -1 +0,0 @@ - diff --git a/lamec b/lamec new file mode 100755 index 0000000..5d5502b --- /dev/null +++ b/lamec @@ -0,0 +1,168 @@ +#!/usr/bin/env python3 + +import sys +import json +import os + +class Module: + """ + Global variables + """ + BEGIN = '#MODULES BEGIN ' + END = '#MODULES END' + +def new_module_commands(): + return {'purge': set(), 'use': set(), 'modules': list()} + +def parse_module_commands(args, module_commands): + + def is_module_keyword(token: str): + return token == 'module' or token == 'ml' + + lines = args['startscript'].splitlines() + for line in lines: + tokens = line.split() + if len(tokens) != 0 and is_module_keyword(tokens[0]): + if 'purge' in tokens: + module_commands['purge'].add(line.strip()) + elif 'use' in tokens: + module_commands['use'].add(line.strip()) + else: + for t in tokens: + if not is_module_keyword(t): + if t not in module_commands['modules']: + module_commands['modules'].append(t) + +def generate_module_statements(args): + module_commands = new_module_commands() + + parse_module_commands(args, module_commands) + + module_statements = '' + for purge in module_commands['purge']: + module_statements += (purge + '\n') + + for use in module_commands['use']: + module_statements += (use + '\n') + + module_statements += 'ml' + for module in module_commands['modules']: + module_statements += (' ' + module) + module_statements += '\n' + + return module_statements + +def generate_module_block(args): + module_block = Module.BEGIN + module_block += (args['system'] + ' ' + args['software'] + '\n') + module_block += generate_module_statements(args) + module_block += (Module.END + '\n\n') + return module_block + +def generate_param_block(args): + if args['system'] == 'jureca': + partition = 'dc-gpu' + gpus_pernode = 4 + elif args['system'] == 'juwels': + partition = 'dc-gpu' + gpus_pernode = 4 + elif args['system'] == 'deep': + partition = 'dc-gpu' + gpus_pernode = 1 + else: + partition = '' + gpus_pernode = 1 + + if args['software'] == 'ddp': + ntask_pernode = 1 + else: + ntask_pernode = gpus_pernode + + param_block = '#!/bin/bash\n' + param_block += ('#SBATCH --job-name=job\n' + + '#SBATCH --output=job.out\n' + + '#SBATCH --error=job.err\n') + param_block += '#SBATCH --account=' + str(args['account']) + '\n' + param_block += '#SBATCH --partition=' + partition + '\n' + param_block += '#SBATCH --nodes=' + str(args['nodes']) + '\n' + param_block += '#SBATCH --gpus-per-node=' + str(gpus_pernode) + '\n' + param_block += '#SBATCH --ntasks-per-node=' + str(ntask_pernode) + '\n' + param_block += '#SBATCH --cpus-per-task=1' + '\n' + param_block += '#SBATCH --exclusive' + '\n' + param_block += '#SBATCH --gres=gpu:' + str(gpus_pernode) + '\n\n' + + return param_block + +def generate_env_block(args): + #environment variable, export 1.CUDA_VISIBLE_DEVICES + #source python venv + env_block = '' + lines = args['startscript'].splitlines() + for line in lines: + tokens = line.split() + if (len(tokens) > 1 and tokens[0] == 'export' + and 'CUDA_VISIBLE_DEVICES' in tokens[1]): + env_block += line.strip() + + env_block += '\n' + if args['system'] == 'jureca' and args['software'] == 'ddp': + env_block += 'source your/env_path/bin/activate\n' + elif args['system'] == 'deep' and args['software'] == 'ddp': + env_block += 'source your/env_path/bin/activate\n' + elif args['system'] == 'juwels': + env_block += 'source your/env_path/bin/activate\n' + else: + env_block += 'source your/env_path/bin/activate\n' + + return env_block + +def generate_launch_block(args): + launch_block = '\n' + def keyword_exist(tokens=list()): + keywords=['srun','nnodes','nproc_per_node','rdzv'] + result = False + for kw in keywords: + result = True in (kw in item for item in tokens) + if result == True: + break + + return result + + if args['software'] == 'ddp': + lines = args['startscript'].splitlines() + for line in lines: + tokens = line.split() + if len(tokens)!=0 and '#' not in tokens[0] and keyword_exist(tokens): + launch_block +=line + '\n' + launch_block += (args['executable'] +'"') + launch_block += '\n' + return launch_block + +def parse(args): + param_block = generate_param_block(args) + module_block = generate_module_block(args) + env_block = generate_env_block(args) + launch_block = generate_launch_block(args) + outp = param_block + module_block + env_block + launch_block + print(outp, end='') + + +def main(): + if len(sys.argv) == 1: + args = json.load(sys.stdin) + else: + args = json.loads(sys.argv[1]) + + path = os.path.join('scripts', f"{args['system']}_{args['software']}") + with open(os.path.join(path, 'lamec.json'), 'r') as f: + config = json.load(f) + if 'startscript' in config: + with open(os.path.join(path, config['startscript']), 'r') as f: + args['startscript'] = f.read() + parse(args) + elif 'template' in config: + # TODO: move template code here + pass + +if __name__ == '__main__': + main() diff --git a/scripts/CTEAMD_DDP/DDP_startscript.sh b/scripts/cteamd_ddp/DDP_startscript.sh similarity index 100% rename from scripts/CTEAMD_DDP/DDP_startscript.sh rename to scripts/cteamd_ddp/DDP_startscript.sh diff --git a/scripts/CTEAMD_DDP/README.md b/scripts/cteamd_ddp/README.md similarity index 100% rename from scripts/CTEAMD_DDP/README.md rename to scripts/cteamd_ddp/README.md diff --git a/scripts/CTEAMD_DDP/createENV.sh b/scripts/cteamd_ddp/createENV.sh similarity index 100% rename from scripts/CTEAMD_DDP/createENV.sh rename to scripts/cteamd_ddp/createENV.sh diff --git a/scripts/CTEAMD_DDP/installWheels.sh b/scripts/cteamd_ddp/installWheels.sh similarity index 100% rename from scripts/CTEAMD_DDP/installWheels.sh rename to scripts/cteamd_ddp/installWheels.sh diff --git a/scripts/cteamd_ddp/lamec.json b/scripts/cteamd_ddp/lamec.json new file mode 100644 index 0000000..b01e2a4 --- /dev/null +++ b/scripts/cteamd_ddp/lamec.json @@ -0,0 +1 @@ +{"startscript": "DDP_startscript.sh"} diff --git a/scripts/CTEAMD_DDP/reqs.txt b/scripts/cteamd_ddp/reqs.txt similarity index 100% rename from scripts/CTEAMD_DDP/reqs.txt rename to scripts/cteamd_ddp/reqs.txt diff --git a/scripts/CTEAMD_DeepSpeed/DS_config.json b/scripts/cteamd_deepspeed/DS_config.json similarity index 100% rename from scripts/CTEAMD_DeepSpeed/DS_config.json rename to scripts/cteamd_deepspeed/DS_config.json diff --git a/scripts/CTEAMD_DeepSpeed/DS_startscript.sh b/scripts/cteamd_deepspeed/DS_startscript.sh similarity index 100% rename from scripts/CTEAMD_DeepSpeed/DS_startscript.sh rename to scripts/cteamd_deepspeed/DS_startscript.sh diff --git a/scripts/CTEAMD_DeepSpeed/README.md b/scripts/cteamd_deepspeed/README.md similarity index 100% rename from scripts/CTEAMD_DeepSpeed/README.md rename to scripts/cteamd_deepspeed/README.md diff --git a/scripts/CTEAMD_DeepSpeed/createENV.sh b/scripts/cteamd_deepspeed/createENV.sh similarity index 100% rename from scripts/CTEAMD_DeepSpeed/createENV.sh rename to scripts/cteamd_deepspeed/createENV.sh diff --git a/scripts/CTEAMD_DeepSpeed/installWheels.sh b/scripts/cteamd_deepspeed/installWheels.sh similarity index 100% rename from scripts/CTEAMD_DeepSpeed/installWheels.sh rename to scripts/cteamd_deepspeed/installWheels.sh diff --git a/scripts/cteamd_deepspeed/lamec.json b/scripts/cteamd_deepspeed/lamec.json new file mode 100644 index 0000000..3e0d85e --- /dev/null +++ b/scripts/cteamd_deepspeed/lamec.json @@ -0,0 +1 @@ +{"startscript": "DS_startscript.sh"} \ No newline at end of file diff --git a/scripts/CTEAMD_DeepSpeed/reqs.txt b/scripts/cteamd_deepspeed/reqs.txt similarity index 100% rename from scripts/CTEAMD_DeepSpeed/reqs.txt rename to scripts/cteamd_deepspeed/reqs.txt diff --git a/scripts/CTEAMD_HeAT/HeAT_startscript.sh b/scripts/cteamd_heat/HeAT_startscript.sh similarity index 100% rename from scripts/CTEAMD_HeAT/HeAT_startscript.sh rename to scripts/cteamd_heat/HeAT_startscript.sh diff --git a/scripts/CTEAMD_HeAT/README.md b/scripts/cteamd_heat/README.md similarity index 100% rename from scripts/CTEAMD_HeAT/README.md rename to scripts/cteamd_heat/README.md diff --git a/scripts/CTEAMD_HeAT/createENV.sh b/scripts/cteamd_heat/createENV.sh similarity index 100% rename from scripts/CTEAMD_HeAT/createENV.sh rename to scripts/cteamd_heat/createENV.sh diff --git a/scripts/CTEAMD_HeAT/installWheels.sh b/scripts/cteamd_heat/installWheels.sh similarity index 100% rename from scripts/CTEAMD_HeAT/installWheels.sh rename to scripts/cteamd_heat/installWheels.sh diff --git a/scripts/cteamd_heat/lamec.json b/scripts/cteamd_heat/lamec.json new file mode 100644 index 0000000..b86e1f1 --- /dev/null +++ b/scripts/cteamd_heat/lamec.json @@ -0,0 +1 @@ +{"startscript": "HeAT_startscript.sh"} \ No newline at end of file diff --git a/scripts/CTEAMD_HeAT/reqs.txt b/scripts/cteamd_heat/reqs.txt similarity index 100% rename from scripts/CTEAMD_HeAT/reqs.txt rename to scripts/cteamd_heat/reqs.txt diff --git a/scripts/CTEAMD_Horovod/Hor_startscript.sh b/scripts/cteamd_horovod/Hor_startscript.sh similarity index 100% rename from scripts/CTEAMD_Horovod/Hor_startscript.sh rename to scripts/cteamd_horovod/Hor_startscript.sh diff --git a/scripts/CTEAMD_Horovod/README.md b/scripts/cteamd_horovod/README.md similarity index 100% rename from scripts/CTEAMD_Horovod/README.md rename to scripts/cteamd_horovod/README.md diff --git a/scripts/CTEAMD_Horovod/createENV.sh b/scripts/cteamd_horovod/createENV.sh similarity index 100% rename from scripts/CTEAMD_Horovod/createENV.sh rename to scripts/cteamd_horovod/createENV.sh diff --git a/scripts/CTEAMD_Horovod/installWheels.sh b/scripts/cteamd_horovod/installWheels.sh similarity index 100% rename from scripts/CTEAMD_Horovod/installWheels.sh rename to scripts/cteamd_horovod/installWheels.sh diff --git a/scripts/cteamd_horovod/lamec.json b/scripts/cteamd_horovod/lamec.json new file mode 100644 index 0000000..89f780b --- /dev/null +++ b/scripts/cteamd_horovod/lamec.json @@ -0,0 +1 @@ +{"startscript": "Hor_startscript.sh"} \ No newline at end of file diff --git a/scripts/CTEAMD_Horovod/reqs.txt b/scripts/cteamd_horovod/reqs.txt similarity index 100% rename from scripts/CTEAMD_Horovod/reqs.txt rename to scripts/cteamd_horovod/reqs.txt diff --git a/scripts/Cyclone_Horovod/.gitkeep b/scripts/cyclone_basilisk/.gitkeep similarity index 100% rename from scripts/Cyclone_Horovod/.gitkeep rename to scripts/cyclone_basilisk/.gitkeep diff --git a/scripts/Cyclone_basilisk/basilisk_cfd.sh b/scripts/cyclone_basilisk/basilisk_cfd.sh similarity index 100% rename from scripts/Cyclone_basilisk/basilisk_cfd.sh rename to scripts/cyclone_basilisk/basilisk_cfd.sh diff --git a/scripts/cyclone_basilisk/lamec.json b/scripts/cyclone_basilisk/lamec.json new file mode 100644 index 0000000..1064dc7 --- /dev/null +++ b/scripts/cyclone_basilisk/lamec.json @@ -0,0 +1 @@ +{"startscript": "basilisk_cfd.sh"} \ No newline at end of file diff --git a/scripts/Cyclone_basilisk/.gitkeep b/scripts/cyclone_horovod/.gitkeep similarity index 100% rename from scripts/Cyclone_basilisk/.gitkeep rename to scripts/cyclone_horovod/.gitkeep diff --git a/scripts/Cyclone_Horovod/FNO_launch.sh b/scripts/cyclone_horovod/FNO_launch.sh similarity index 100% rename from scripts/Cyclone_Horovod/FNO_launch.sh rename to scripts/cyclone_horovod/FNO_launch.sh diff --git a/scripts/cyclone_horovod/lamec.json b/scripts/cyclone_horovod/lamec.json new file mode 100644 index 0000000..212f4d1 --- /dev/null +++ b/scripts/cyclone_horovod/lamec.json @@ -0,0 +1 @@ +{"startscript": "FNO_launch.sh"} \ No newline at end of file diff --git a/scripts/Deep_DDP/DDP_startscript_deep.sh b/scripts/deep_ddp/DDP_startscript_deep.sh similarity index 100% rename from scripts/Deep_DDP/DDP_startscript_deep.sh rename to scripts/deep_ddp/DDP_startscript_deep.sh diff --git a/scripts/Deep_DDP/README.md b/scripts/deep_ddp/README.md similarity index 100% rename from scripts/Deep_DDP/README.md rename to scripts/deep_ddp/README.md diff --git a/scripts/Deep_DDP/conda_torch.sh b/scripts/deep_ddp/conda_torch.sh similarity index 100% rename from scripts/Deep_DDP/conda_torch.sh rename to scripts/deep_ddp/conda_torch.sh diff --git a/scripts/Deep_DDP/createEnv.sh b/scripts/deep_ddp/createEnv.sh similarity index 100% rename from scripts/Deep_DDP/createEnv.sh rename to scripts/deep_ddp/createEnv.sh diff --git a/scripts/deep_ddp/lamec.json b/scripts/deep_ddp/lamec.json new file mode 100644 index 0000000..8e4595a --- /dev/null +++ b/scripts/deep_ddp/lamec.json @@ -0,0 +1 @@ +{"startscript": "DDP_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Deep_DDP/reqs.txt b/scripts/deep_ddp/reqs.txt similarity index 100% rename from scripts/Deep_DDP/reqs.txt rename to scripts/deep_ddp/reqs.txt diff --git a/scripts/Deep_DeepSpeed/DS_config.json b/scripts/deep_deepspeed/DS_config.json similarity index 100% rename from scripts/Deep_DeepSpeed/DS_config.json rename to scripts/deep_deepspeed/DS_config.json diff --git a/scripts/Deep_DeepSpeed/DS_startscript_deep.sh b/scripts/deep_deepspeed/DS_startscript_deep.sh similarity index 100% rename from scripts/Deep_DeepSpeed/DS_startscript_deep.sh rename to scripts/deep_deepspeed/DS_startscript_deep.sh diff --git a/scripts/Deep_DeepSpeed/README.md b/scripts/deep_deepspeed/README.md similarity index 100% rename from scripts/Deep_DeepSpeed/README.md rename to scripts/deep_deepspeed/README.md diff --git a/scripts/Deep_DeepSpeed/createEnv.sh b/scripts/deep_deepspeed/createEnv.sh similarity index 100% rename from scripts/Deep_DeepSpeed/createEnv.sh rename to scripts/deep_deepspeed/createEnv.sh diff --git a/scripts/deep_deepspeed/lamec.json b/scripts/deep_deepspeed/lamec.json new file mode 100644 index 0000000..b1572ed --- /dev/null +++ b/scripts/deep_deepspeed/lamec.json @@ -0,0 +1 @@ +{"startscript": "DS_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Deep_DeepSpeed/reqs.txt b/scripts/deep_deepspeed/reqs.txt similarity index 100% rename from scripts/Deep_DeepSpeed/reqs.txt rename to scripts/deep_deepspeed/reqs.txt diff --git a/scripts/Deep_HeAT/HeAT_startscript_deep.sh b/scripts/deep_heat/HeAT_startscript_deep.sh similarity index 100% rename from scripts/Deep_HeAT/HeAT_startscript_deep.sh rename to scripts/deep_heat/HeAT_startscript_deep.sh diff --git a/scripts/Deep_HeAT/README.md b/scripts/deep_heat/README.md similarity index 100% rename from scripts/Deep_HeAT/README.md rename to scripts/deep_heat/README.md diff --git a/scripts/Deep_HeAT/createEnv.sh b/scripts/deep_heat/createEnv.sh similarity index 100% rename from scripts/Deep_HeAT/createEnv.sh rename to scripts/deep_heat/createEnv.sh diff --git a/scripts/Deep_HeAT/example_mnist_heat.py b/scripts/deep_heat/example_mnist_heat.py similarity index 100% rename from scripts/Deep_HeAT/example_mnist_heat.py rename to scripts/deep_heat/example_mnist_heat.py diff --git a/scripts/deep_heat/lamec.json b/scripts/deep_heat/lamec.json new file mode 100644 index 0000000..d1bf1b2 --- /dev/null +++ b/scripts/deep_heat/lamec.json @@ -0,0 +1 @@ +{"startscript": "HeAT_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Deep_HeAT/reqs.txt b/scripts/deep_heat/reqs.txt similarity index 100% rename from scripts/Deep_HeAT/reqs.txt rename to scripts/deep_heat/reqs.txt diff --git a/scripts/Deep_Horovod/Hor_startscript_deep.sh b/scripts/deep_horovod/Hor_startscript_deep.sh similarity index 100% rename from scripts/Deep_Horovod/Hor_startscript_deep.sh rename to scripts/deep_horovod/Hor_startscript_deep.sh diff --git a/scripts/Deep_Horovod/README.md b/scripts/deep_horovod/README.md similarity index 100% rename from scripts/Deep_Horovod/README.md rename to scripts/deep_horovod/README.md diff --git a/scripts/Deep_Horovod/createEnv.sh b/scripts/deep_horovod/createEnv.sh similarity index 100% rename from scripts/Deep_Horovod/createEnv.sh rename to scripts/deep_horovod/createEnv.sh diff --git a/scripts/deep_horovod/lamec.json b/scripts/deep_horovod/lamec.json new file mode 100644 index 0000000..4aff71d --- /dev/null +++ b/scripts/deep_horovod/lamec.json @@ -0,0 +1 @@ +{"startscript": "Hor_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Deep_Horovod/pytorch_mnist.py b/scripts/deep_horovod/pytorch_mnist.py similarity index 100% rename from scripts/Deep_Horovod/pytorch_mnist.py rename to scripts/deep_horovod/pytorch_mnist.py diff --git a/scripts/Deep_Horovod/pytorch_synthetic_benchmark.py b/scripts/deep_horovod/pytorch_synthetic_benchmark.py similarity index 100% rename from scripts/Deep_Horovod/pytorch_synthetic_benchmark.py rename to scripts/deep_horovod/pytorch_synthetic_benchmark.py diff --git a/scripts/Deep_Horovod/reqs.txt b/scripts/deep_horovod/reqs.txt similarity index 100% rename from scripts/Deep_Horovod/reqs.txt rename to scripts/deep_horovod/reqs.txt diff --git a/scripts/Deep_TensorFlow/Create_Jupyter_deepv.ipynb b/scripts/deep_tensorflow/Create_Jupyter_deepv.ipynb similarity index 100% rename from scripts/Deep_TensorFlow/Create_Jupyter_deepv.ipynb rename to scripts/deep_tensorflow/Create_Jupyter_deepv.ipynb diff --git a/scripts/Deep_TensorFlow/README.md b/scripts/deep_tensorflow/README.md similarity index 100% rename from scripts/Deep_TensorFlow/README.md rename to scripts/deep_tensorflow/README.md diff --git a/scripts/Deep_TensorFlow/TF_startscript_deep.sh b/scripts/deep_tensorflow/TF_startscript_deep.sh similarity index 100% rename from scripts/Deep_TensorFlow/TF_startscript_deep.sh rename to scripts/deep_tensorflow/TF_startscript_deep.sh diff --git a/scripts/Deep_TensorFlow/createEnv_TF.sh b/scripts/deep_tensorflow/createEnv_TF.sh similarity index 100% rename from scripts/Deep_TensorFlow/createEnv_TF.sh rename to scripts/deep_tensorflow/createEnv_TF.sh diff --git a/scripts/Deep_TensorFlow/jupyterAddKernel.sh b/scripts/deep_tensorflow/jupyterAddKernel.sh similarity index 100% rename from scripts/Deep_TensorFlow/jupyterAddKernel.sh rename to scripts/deep_tensorflow/jupyterAddKernel.sh diff --git a/scripts/Deep_TensorFlow/jupyterCreateKernel.sh b/scripts/deep_tensorflow/jupyterCreateKernel.sh similarity index 100% rename from scripts/Deep_TensorFlow/jupyterCreateKernel.sh rename to scripts/deep_tensorflow/jupyterCreateKernel.sh diff --git a/scripts/deep_tensorflow/lamec.json b/scripts/deep_tensorflow/lamec.json new file mode 100644 index 0000000..8c582bb --- /dev/null +++ b/scripts/deep_tensorflow/lamec.json @@ -0,0 +1 @@ +{"startscript": "TF_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Deep_TensorFlow/tensorflow2_synthetic_benchmark.py b/scripts/deep_tensorflow/tensorflow2_synthetic_benchmark.py similarity index 100% rename from scripts/Deep_TensorFlow/tensorflow2_synthetic_benchmark.py rename to scripts/deep_tensorflow/tensorflow2_synthetic_benchmark.py diff --git a/scripts/Jureca_DDP/DDP_startscript.sh b/scripts/jureca_ddp/DDP_startscript.sh similarity index 100% rename from scripts/Jureca_DDP/DDP_startscript.sh rename to scripts/jureca_ddp/DDP_startscript.sh diff --git a/scripts/Jureca_DDP/DDP_startscript_container.sh b/scripts/jureca_ddp/DDP_startscript_container.sh similarity index 100% rename from scripts/Jureca_DDP/DDP_startscript_container.sh rename to scripts/jureca_ddp/DDP_startscript_container.sh diff --git a/scripts/Jureca_DDP/README.md b/scripts/jureca_ddp/README.md similarity index 100% rename from scripts/Jureca_DDP/README.md rename to scripts/jureca_ddp/README.md diff --git a/scripts/Jureca_DDP/createContainer.sh b/scripts/jureca_ddp/createContainer.sh similarity index 100% rename from scripts/Jureca_DDP/createContainer.sh rename to scripts/jureca_ddp/createContainer.sh diff --git a/scripts/Jureca_DDP/createEnv.sh b/scripts/jureca_ddp/createEnv.sh similarity index 100% rename from scripts/Jureca_DDP/createEnv.sh rename to scripts/jureca_ddp/createEnv.sh diff --git a/scripts/Jureca_DDP/createEnv_MPI.sh b/scripts/jureca_ddp/createEnv_MPI.sh similarity index 100% rename from scripts/Jureca_DDP/createEnv_MPI.sh rename to scripts/jureca_ddp/createEnv_MPI.sh diff --git a/scripts/Jureca_DDP/fixed_torch_run.py b/scripts/jureca_ddp/fixed_torch_run.py similarity index 100% rename from scripts/Jureca_DDP/fixed_torch_run.py rename to scripts/jureca_ddp/fixed_torch_run.py diff --git a/scripts/jureca_ddp/lamec.json b/scripts/jureca_ddp/lamec.json new file mode 100644 index 0000000..a36ad53 --- /dev/null +++ b/scripts/jureca_ddp/lamec.json @@ -0,0 +1 @@ +{"startscript": "DDP_startscript.sh"} \ No newline at end of file diff --git a/scripts/Jureca_DDP/reqs.txt b/scripts/jureca_ddp/reqs.txt similarity index 100% rename from scripts/Jureca_DDP/reqs.txt rename to scripts/jureca_ddp/reqs.txt diff --git a/scripts/Jureca_DeepSpeed/DS_config.json b/scripts/jureca_deepspeed/DS_config.json similarity index 100% rename from scripts/Jureca_DeepSpeed/DS_config.json rename to scripts/jureca_deepspeed/DS_config.json diff --git a/scripts/Jureca_DeepSpeed/DS_startscript_deep.sh b/scripts/jureca_deepspeed/DS_startscript_deep.sh similarity index 100% rename from scripts/Jureca_DeepSpeed/DS_startscript_deep.sh rename to scripts/jureca_deepspeed/DS_startscript_deep.sh diff --git a/scripts/Jureca_DeepSpeed/README.md b/scripts/jureca_deepspeed/README.md similarity index 100% rename from scripts/Jureca_DeepSpeed/README.md rename to scripts/jureca_deepspeed/README.md diff --git a/scripts/Jureca_DeepSpeed/createEnv.sh b/scripts/jureca_deepspeed/createEnv.sh similarity index 100% rename from scripts/Jureca_DeepSpeed/createEnv.sh rename to scripts/jureca_deepspeed/createEnv.sh diff --git a/scripts/jureca_deepspeed/lamec.json b/scripts/jureca_deepspeed/lamec.json new file mode 100644 index 0000000..b1572ed --- /dev/null +++ b/scripts/jureca_deepspeed/lamec.json @@ -0,0 +1 @@ +{"startscript": "DS_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Jureca_DeepSpeed/reqs.txt b/scripts/jureca_deepspeed/reqs.txt similarity index 100% rename from scripts/Jureca_DeepSpeed/reqs.txt rename to scripts/jureca_deepspeed/reqs.txt diff --git a/scripts/Jureca_Graphcore/GC_pytorch_mnist.py b/scripts/jureca_graphcore/GC_pytorch_mnist.py similarity index 100% rename from scripts/Jureca_Graphcore/GC_pytorch_mnist.py rename to scripts/jureca_graphcore/GC_pytorch_mnist.py diff --git a/scripts/Jureca_Graphcore/GC_startscript.sh b/scripts/jureca_graphcore/GC_startscript.sh similarity index 100% rename from scripts/Jureca_Graphcore/GC_startscript.sh rename to scripts/jureca_graphcore/GC_startscript.sh diff --git a/scripts/Jureca_Graphcore/README.md b/scripts/jureca_graphcore/README.md similarity index 100% rename from scripts/Jureca_Graphcore/README.md rename to scripts/jureca_graphcore/README.md diff --git a/scripts/jureca_graphcore/lamec.json b/scripts/jureca_graphcore/lamec.json new file mode 100644 index 0000000..fe05ab6 --- /dev/null +++ b/scripts/jureca_graphcore/lamec.json @@ -0,0 +1 @@ +{"startscript": "GC_startscript.sh"} \ No newline at end of file diff --git a/scripts/Jureca_HeAT/HeAT_startscript_deep.sh b/scripts/jureca_heat/HeAT_startscript_deep.sh similarity index 100% rename from scripts/Jureca_HeAT/HeAT_startscript_deep.sh rename to scripts/jureca_heat/HeAT_startscript_deep.sh diff --git a/scripts/Jureca_HeAT/README.md b/scripts/jureca_heat/README.md similarity index 100% rename from scripts/Jureca_HeAT/README.md rename to scripts/jureca_heat/README.md diff --git a/scripts/Jureca_HeAT/createEnv.sh b/scripts/jureca_heat/createEnv.sh similarity index 100% rename from scripts/Jureca_HeAT/createEnv.sh rename to scripts/jureca_heat/createEnv.sh diff --git a/scripts/jureca_heat/lamec.json b/scripts/jureca_heat/lamec.json new file mode 100644 index 0000000..d1bf1b2 --- /dev/null +++ b/scripts/jureca_heat/lamec.json @@ -0,0 +1 @@ +{"startscript": "HeAT_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Jureca_HeAT/reqs.txt b/scripts/jureca_heat/reqs.txt similarity index 100% rename from scripts/Jureca_HeAT/reqs.txt rename to scripts/jureca_heat/reqs.txt diff --git a/scripts/Jureca_Horovod/Hor_startscript_deep.sh b/scripts/jureca_horovod/Hor_startscript_deep.sh similarity index 100% rename from scripts/Jureca_Horovod/Hor_startscript_deep.sh rename to scripts/jureca_horovod/Hor_startscript_deep.sh diff --git a/scripts/Jureca_Horovod/README.md b/scripts/jureca_horovod/README.md similarity index 100% rename from scripts/Jureca_Horovod/README.md rename to scripts/jureca_horovod/README.md diff --git a/scripts/Jureca_Horovod/createEnv.sh b/scripts/jureca_horovod/createEnv.sh similarity index 100% rename from scripts/Jureca_Horovod/createEnv.sh rename to scripts/jureca_horovod/createEnv.sh diff --git a/scripts/jureca_horovod/lamec.json b/scripts/jureca_horovod/lamec.json new file mode 100644 index 0000000..4aff71d --- /dev/null +++ b/scripts/jureca_horovod/lamec.json @@ -0,0 +1 @@ +{"startscript": "Hor_startscript_deep.sh"} \ No newline at end of file diff --git a/scripts/Jureca_Horovod/reqs.txt b/scripts/jureca_horovod/reqs.txt similarity index 100% rename from scripts/Jureca_Horovod/reqs.txt rename to scripts/jureca_horovod/reqs.txt diff --git a/scripts/Jureca_LibTorch/MNIST/CMakeLists.txt b/scripts/jureca_libtorch/MNIST/CMakeLists.txt similarity index 100% rename from scripts/Jureca_LibTorch/MNIST/CMakeLists.txt rename to scripts/jureca_libtorch/MNIST/CMakeLists.txt diff --git a/scripts/Jureca_LibTorch/MNIST/LibTorch_startscript.sh b/scripts/jureca_libtorch/MNIST/LibTorch_startscript.sh similarity index 100% rename from scripts/Jureca_LibTorch/MNIST/LibTorch_startscript.sh rename to scripts/jureca_libtorch/MNIST/LibTorch_startscript.sh diff --git a/scripts/Jureca_LibTorch/MNIST/compile.sh b/scripts/jureca_libtorch/MNIST/compile.sh similarity index 100% rename from scripts/Jureca_LibTorch/MNIST/compile.sh rename to scripts/jureca_libtorch/MNIST/compile.sh diff --git a/scripts/Jureca_LibTorch/MNIST/download_mnist.py b/scripts/jureca_libtorch/MNIST/download_mnist.py similarity index 100% rename from scripts/Jureca_LibTorch/MNIST/download_mnist.py rename to scripts/jureca_libtorch/MNIST/download_mnist.py diff --git a/scripts/Jureca_LibTorch/MNIST/mnist.cpp b/scripts/jureca_libtorch/MNIST/mnist.cpp similarity index 100% rename from scripts/Jureca_LibTorch/MNIST/mnist.cpp rename to scripts/jureca_libtorch/MNIST/mnist.cpp diff --git a/scripts/Jureca_LibTorch/README.md b/scripts/jureca_libtorch/README.md similarity index 100% rename from scripts/Jureca_LibTorch/README.md rename to scripts/jureca_libtorch/README.md diff --git a/scripts/Jureca_LibTorch/TorchVision/compile_jpeg.sh b/scripts/jureca_libtorch/TorchVision/compile_jpeg.sh similarity index 100% rename from scripts/Jureca_LibTorch/TorchVision/compile_jpeg.sh rename to scripts/jureca_libtorch/TorchVision/compile_jpeg.sh diff --git a/scripts/Jureca_LibTorch/TorchVision/compile_png.sh b/scripts/jureca_libtorch/TorchVision/compile_png.sh similarity index 100% rename from scripts/Jureca_LibTorch/TorchVision/compile_png.sh rename to scripts/jureca_libtorch/TorchVision/compile_png.sh diff --git a/scripts/Jureca_LibTorch/TorchVision/compile_torchvision.sh b/scripts/jureca_libtorch/TorchVision/compile_torchvision.sh similarity index 100% rename from scripts/Jureca_LibTorch/TorchVision/compile_torchvision.sh rename to scripts/jureca_libtorch/TorchVision/compile_torchvision.sh diff --git a/scripts/jureca_libtorch/lamec.json b/scripts/jureca_libtorch/lamec.json new file mode 100644 index 0000000..a8d025c --- /dev/null +++ b/scripts/jureca_libtorch/lamec.json @@ -0,0 +1 @@ +{"startscript": "MNIST/LibTorch_startscript.sh"} \ No newline at end of file diff --git a/scripts/Jureca_RayTune/.gitkeep b/scripts/jureca_raytune/.gitkeep similarity index 100% rename from scripts/Jureca_RayTune/.gitkeep rename to scripts/jureca_raytune/.gitkeep diff --git a/scripts/Jureca_RayTune/README.md b/scripts/jureca_raytune/README.md similarity index 100% rename from scripts/Jureca_RayTune/README.md rename to scripts/jureca_raytune/README.md diff --git a/scripts/Jureca_RayTune/RayTune+DDP/.gitkeep b/scripts/jureca_raytune/RayTune+DDP/.gitkeep similarity index 100% rename from scripts/Jureca_RayTune/RayTune+DDP/.gitkeep rename to scripts/jureca_raytune/RayTune+DDP/.gitkeep diff --git a/scripts/Jureca_RayTune/RayTune+DDP/cifar_tune.py b/scripts/jureca_raytune/RayTune+DDP/cifar_tune.py similarity index 100% rename from scripts/Jureca_RayTune/RayTune+DDP/cifar_tune.py rename to scripts/jureca_raytune/RayTune+DDP/cifar_tune.py diff --git a/scripts/Jureca_RayTune/RayTune+DDP/create_env.sh b/scripts/jureca_raytune/RayTune+DDP/create_env.sh similarity index 100% rename from scripts/Jureca_RayTune/RayTune+DDP/create_env.sh rename to scripts/jureca_raytune/RayTune+DDP/create_env.sh diff --git a/scripts/Jureca_RayTune/RayTune+DDP/jureca_ray_ddp_startscript.sh b/scripts/jureca_raytune/RayTune+DDP/jureca_ray_ddp_startscript.sh similarity index 100% rename from scripts/Jureca_RayTune/RayTune+DDP/jureca_ray_ddp_startscript.sh rename to scripts/jureca_raytune/RayTune+DDP/jureca_ray_ddp_startscript.sh diff --git a/scripts/Jureca_RayTune/Ray_2.4/.gitkeep b/scripts/jureca_raytune/Ray_2.4/.gitkeep similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/.gitkeep rename to scripts/jureca_raytune/Ray_2.4/.gitkeep diff --git a/scripts/Jureca_RayTune/Ray_2.4/ASHA/.gitkeep b/scripts/jureca_raytune/Ray_2.4/ASHA/.gitkeep similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/ASHA/.gitkeep rename to scripts/jureca_raytune/Ray_2.4/ASHA/.gitkeep diff --git a/scripts/Jureca_RayTune/Ray_2.4/ASHA/cifar_tune_asha.py b/scripts/jureca_raytune/Ray_2.4/ASHA/cifar_tune_asha.py similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/ASHA/cifar_tune_asha.py rename to scripts/jureca_raytune/Ray_2.4/ASHA/cifar_tune_asha.py diff --git a/scripts/Jureca_RayTune/Ray_2.4/ASHA/jureca_ray_startscript.sh b/scripts/jureca_raytune/Ray_2.4/ASHA/jureca_ray_startscript.sh similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/ASHA/jureca_ray_startscript.sh rename to scripts/jureca_raytune/Ray_2.4/ASHA/jureca_ray_startscript.sh diff --git a/scripts/Jureca_RayTune/Ray_2.4/BOHB/.gitkeep b/scripts/jureca_raytune/Ray_2.4/BOHB/.gitkeep similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/BOHB/.gitkeep rename to scripts/jureca_raytune/Ray_2.4/BOHB/.gitkeep diff --git a/scripts/Jureca_RayTune/Ray_2.4/BOHB/cifar_tune_bohb.py b/scripts/jureca_raytune/Ray_2.4/BOHB/cifar_tune_bohb.py similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/BOHB/cifar_tune_bohb.py rename to scripts/jureca_raytune/Ray_2.4/BOHB/cifar_tune_bohb.py diff --git a/scripts/Jureca_RayTune/Ray_2.4/BOHB/jureca_ray_startscript.sh b/scripts/jureca_raytune/Ray_2.4/BOHB/jureca_ray_startscript.sh similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/BOHB/jureca_ray_startscript.sh rename to scripts/jureca_raytune/Ray_2.4/BOHB/jureca_ray_startscript.sh diff --git a/scripts/Jureca_RayTune/Ray_2.4/PBT/.gitkeep b/scripts/jureca_raytune/Ray_2.4/PBT/.gitkeep similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/PBT/.gitkeep rename to scripts/jureca_raytune/Ray_2.4/PBT/.gitkeep diff --git a/scripts/Jureca_RayTune/Ray_2.4/PBT/cifar_tune_pbt.py b/scripts/jureca_raytune/Ray_2.4/PBT/cifar_tune_pbt.py similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/PBT/cifar_tune_pbt.py rename to scripts/jureca_raytune/Ray_2.4/PBT/cifar_tune_pbt.py diff --git a/scripts/Jureca_RayTune/Ray_2.4/PBT/jureca_ray_startscript.sh b/scripts/jureca_raytune/Ray_2.4/PBT/jureca_ray_startscript.sh similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/PBT/jureca_ray_startscript.sh rename to scripts/jureca_raytune/Ray_2.4/PBT/jureca_ray_startscript.sh diff --git a/scripts/Jureca_RayTune/Ray_2.4/build_ray_env.sh b/scripts/jureca_raytune/Ray_2.4/build_ray_env.sh similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/build_ray_env.sh rename to scripts/jureca_raytune/Ray_2.4/build_ray_env.sh diff --git a/scripts/Jureca_RayTune/Ray_2.4/hpo.md b/scripts/jureca_raytune/Ray_2.4/hpo.md similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/hpo.md rename to scripts/jureca_raytune/Ray_2.4/hpo.md diff --git a/scripts/Jureca_RayTune/Ray_2.4/hpo.py b/scripts/jureca_raytune/Ray_2.4/hpo.py similarity index 100% rename from scripts/Jureca_RayTune/Ray_2.4/hpo.py rename to scripts/jureca_raytune/Ray_2.4/hpo.py diff --git a/scripts/Jureca_RayTune/cifar_tune.py b/scripts/jureca_raytune/cifar_tune.py similarity index 100% rename from scripts/Jureca_RayTune/cifar_tune.py rename to scripts/jureca_raytune/cifar_tune.py diff --git a/scripts/Jureca_RayTune/cifar_tune_tf.py b/scripts/jureca_raytune/cifar_tune_tf.py similarity index 100% rename from scripts/Jureca_RayTune/cifar_tune_tf.py rename to scripts/jureca_raytune/cifar_tune_tf.py diff --git a/scripts/Jureca_RayTune/create_jureca_env.sh b/scripts/jureca_raytune/create_jureca_env.sh similarity index 100% rename from scripts/Jureca_RayTune/create_jureca_env.sh rename to scripts/jureca_raytune/create_jureca_env.sh diff --git a/scripts/Jureca_RayTune/jureca_run_ray.sh b/scripts/jureca_raytune/jureca_run_ray.sh similarity index 100% rename from scripts/Jureca_RayTune/jureca_run_ray.sh rename to scripts/jureca_raytune/jureca_run_ray.sh diff --git a/scripts/Juwels_DDP/README.md b/scripts/juwels_ddp/README.md similarity index 100% rename from scripts/Juwels_DDP/README.md rename to scripts/juwels_ddp/README.md diff --git a/scripts/Juwels_DDP/container_batch.sh b/scripts/juwels_ddp/container_batch.sh similarity index 100% rename from scripts/Juwels_DDP/container_batch.sh rename to scripts/juwels_ddp/container_batch.sh diff --git a/scripts/Juwels_DDP/container_build.sh b/scripts/juwels_ddp/container_build.sh similarity index 100% rename from scripts/Juwels_DDP/container_build.sh rename to scripts/juwels_ddp/container_build.sh diff --git a/scripts/Juwels_DDP/container_env.sh b/scripts/juwels_ddp/container_env.sh similarity index 100% rename from scripts/Juwels_DDP/container_env.sh rename to scripts/juwels_ddp/container_env.sh diff --git a/scripts/Juwels_DDP/createEnv.sh b/scripts/juwels_ddp/createEnv.sh similarity index 100% rename from scripts/Juwels_DDP/createEnv.sh rename to scripts/juwels_ddp/createEnv.sh diff --git a/scripts/Juwels_DDP/env_batch.sh b/scripts/juwels_ddp/env_batch.sh similarity index 100% rename from scripts/Juwels_DDP/env_batch.sh rename to scripts/juwels_ddp/env_batch.sh diff --git a/scripts/Juwels_DDP/env_build.sh b/scripts/juwels_ddp/env_build.sh similarity index 100% rename from scripts/Juwels_DDP/env_build.sh rename to scripts/juwels_ddp/env_build.sh diff --git a/scripts/Juwels_DDP/fixed_torch_run.py b/scripts/juwels_ddp/fixed_torch_run.py similarity index 100% rename from scripts/Juwels_DDP/fixed_torch_run.py rename to scripts/juwels_ddp/fixed_torch_run.py diff --git a/scripts/Juwels_DDP/install_pyDDP.sh b/scripts/juwels_ddp/install_pyDDP.sh similarity index 100% rename from scripts/Juwels_DDP/install_pyDDP.sh rename to scripts/juwels_ddp/install_pyDDP.sh diff --git a/scripts/juwels_ddp/lamec.json b/scripts/juwels_ddp/lamec.json new file mode 100644 index 0000000..af5277f --- /dev/null +++ b/scripts/juwels_ddp/lamec.json @@ -0,0 +1 @@ +{"startscript": "env_batch.sh"} \ No newline at end of file diff --git a/scripts/Juwels_DDP/reqs.txt b/scripts/juwels_ddp/reqs.txt similarity index 100% rename from scripts/Juwels_DDP/reqs.txt rename to scripts/juwels_ddp/reqs.txt diff --git a/scripts/Juwels_Turbulence/Autoencoder_Turbulence.py b/scripts/juwels_turbulence/Autoencoder_Turbulence.py similarity index 100% rename from scripts/Juwels_Turbulence/Autoencoder_Turbulence.py rename to scripts/juwels_turbulence/Autoencoder_Turbulence.py diff --git a/scripts/Juwels_Turbulence/Autoencoder_Turbulence_PINNs.py b/scripts/juwels_turbulence/Autoencoder_Turbulence_PINNs.py similarity index 100% rename from scripts/Juwels_Turbulence/Autoencoder_Turbulence_PINNs.py rename to scripts/juwels_turbulence/Autoencoder_Turbulence_PINNs.py diff --git a/scripts/Juwels_Turbulence/Autoencoder_Turbulence_horv.py b/scripts/juwels_turbulence/Autoencoder_Turbulence_horv.py similarity index 100% rename from scripts/Juwels_Turbulence/Autoencoder_Turbulence_horv.py rename to scripts/juwels_turbulence/Autoencoder_Turbulence_horv.py diff --git a/scripts/Juwels_Turbulence/Autoencoder_Turbulence_olddata.py b/scripts/juwels_turbulence/Autoencoder_Turbulence_olddata.py similarity index 100% rename from scripts/Juwels_Turbulence/Autoencoder_Turbulence_olddata.py rename to scripts/juwels_turbulence/Autoencoder_Turbulence_olddata.py diff --git a/scripts/Juwels_Turbulence/Autoencoder_Turbulence_serial.py b/scripts/juwels_turbulence/Autoencoder_Turbulence_serial.py similarity index 100% rename from scripts/Juwels_Turbulence/Autoencoder_Turbulence_serial.py rename to scripts/juwels_turbulence/Autoencoder_Turbulence_serial.py diff --git a/scripts/Juwels_Turbulence/CAE_loss_serial_vs_par.pdf b/scripts/juwels_turbulence/CAE_loss_serial_vs_par.pdf similarity index 100% rename from scripts/Juwels_Turbulence/CAE_loss_serial_vs_par.pdf rename to scripts/juwels_turbulence/CAE_loss_serial_vs_par.pdf diff --git a/scripts/Juwels_Turbulence/CAE_serial.pdf b/scripts/juwels_turbulence/CAE_serial.pdf similarity index 100% rename from scripts/Juwels_Turbulence/CAE_serial.pdf rename to scripts/juwels_turbulence/CAE_serial.pdf diff --git a/scripts/Juwels_Turbulence/startScript b/scripts/juwels_turbulence/startScript similarity index 100% rename from scripts/Juwels_Turbulence/startScript rename to scripts/juwels_turbulence/startScript diff --git a/scripts/Juwels_Turbulence/startScript_horovod b/scripts/juwels_turbulence/startScript_horovod similarity index 100% rename from scripts/Juwels_Turbulence/startScript_horovod rename to scripts/juwels_turbulence/startScript_horovod diff --git a/scripts/Juwels_Turbulence/startScript_serial b/scripts/juwels_turbulence/startScript_serial similarity index 100% rename from scripts/Juwels_Turbulence/startScript_serial rename to scripts/juwels_turbulence/startScript_serial diff --git a/scripts/LUMI_DDP/README.md b/scripts/lumi_ddp/README.md similarity index 100% rename from scripts/LUMI_DDP/README.md rename to scripts/lumi_ddp/README.md diff --git a/scripts/LUMI_DDP/container_build.sh b/scripts/lumi_ddp/container_build.sh similarity index 100% rename from scripts/LUMI_DDP/container_build.sh rename to scripts/lumi_ddp/container_build.sh diff --git a/scripts/LUMI_DDP/container_env.sh b/scripts/lumi_ddp/container_env.sh similarity index 100% rename from scripts/LUMI_DDP/container_env.sh rename to scripts/lumi_ddp/container_env.sh diff --git a/scripts/LUMI_DDP/container_startscript.sh b/scripts/lumi_ddp/container_startscript.sh similarity index 100% rename from scripts/LUMI_DDP/container_startscript.sh rename to scripts/lumi_ddp/container_startscript.sh diff --git a/scripts/LUMI_DDP/env_build.sh b/scripts/lumi_ddp/env_build.sh similarity index 100% rename from scripts/LUMI_DDP/env_build.sh rename to scripts/lumi_ddp/env_build.sh diff --git a/scripts/LUMI_DDP/env_startscript.sh b/scripts/lumi_ddp/env_startscript.sh similarity index 100% rename from scripts/LUMI_DDP/env_startscript.sh rename to scripts/lumi_ddp/env_startscript.sh diff --git a/scripts/lumi_ddp/lamec.json b/scripts/lumi_ddp/lamec.json new file mode 100644 index 0000000..089c01b --- /dev/null +++ b/scripts/lumi_ddp/lamec.json @@ -0,0 +1 @@ +{"startscript": "env_startscript.sh"} \ No newline at end of file diff --git a/scripts/LUMI_DDP/reqs.txt b/scripts/lumi_ddp/reqs.txt similarity index 100% rename from scripts/LUMI_DDP/reqs.txt rename to scripts/lumi_ddp/reqs.txt diff --git a/scripts/PizDa_DDP/DDP_startscript b/scripts/pizda_ddp/DDP_startscript similarity index 100% rename from scripts/PizDa_DDP/DDP_startscript rename to scripts/pizda_ddp/DDP_startscript diff --git a/scripts/PizDa_DDP/createENV.sh b/scripts/pizda_ddp/createENV.sh similarity index 100% rename from scripts/PizDa_DDP/createENV.sh rename to scripts/pizda_ddp/createENV.sh diff --git a/scripts/pizda_ddp/lamec.json b/scripts/pizda_ddp/lamec.json new file mode 100644 index 0000000..5a1dbcb --- /dev/null +++ b/scripts/pizda_ddp/lamec.json @@ -0,0 +1 @@ +{"startscript": "DDP_startscript"} \ No newline at end of file diff --git a/scripts/PizDa_DDP/reqs.txt b/scripts/pizda_ddp/reqs.txt similarity index 100% rename from scripts/PizDa_DDP/reqs.txt rename to scripts/pizda_ddp/reqs.txt diff --git a/scripts/Rudens_DDP/.gitkeep b/scripts/rudens_ddp/.gitkeep similarity index 100% rename from scripts/Rudens_DDP/.gitkeep rename to scripts/rudens_ddp/.gitkeep diff --git a/scripts/Rudens_DDP/rtu_run.sh b/scripts/rudens_ddp/rtu_run.sh similarity index 100% rename from scripts/Rudens_DDP/rtu_run.sh rename to scripts/rudens_ddp/rtu_run.sh diff --git a/scripts/Rudens_DDP/rtu_run_schedule.sh b/scripts/rudens_ddp/rtu_run_schedule.sh similarity index 100% rename from scripts/Rudens_DDP/rtu_run_schedule.sh rename to scripts/rudens_ddp/rtu_run_schedule.sh diff --git a/scripts/VSC_DDP/.gitkeep b/scripts/vega_basilisk/.gitkeep similarity index 100% rename from scripts/VSC_DDP/.gitkeep rename to scripts/vega_basilisk/.gitkeep diff --git a/scripts/Vega_ Basilisk/basilisk_cfd.sh b/scripts/vega_basilisk/basilisk_cfd.sh similarity index 100% rename from scripts/Vega_ Basilisk/basilisk_cfd.sh rename to scripts/vega_basilisk/basilisk_cfd.sh diff --git a/scripts/Vega_ Basilisk/basilisk_pde.sh b/scripts/vega_basilisk/basilisk_pde.sh similarity index 100% rename from scripts/Vega_ Basilisk/basilisk_pde.sh rename to scripts/vega_basilisk/basilisk_pde.sh diff --git a/scripts/vega_basilisk/lamec.json b/scripts/vega_basilisk/lamec.json new file mode 100644 index 0000000..481c29f --- /dev/null +++ b/scripts/vega_basilisk/lamec.json @@ -0,0 +1 @@ +{"startscript": "baskilisk_cfd.sh"} diff --git a/scripts/Vega_ Basilisk/.gitkeep b/scripts/vsc_ddp/.gitkeep similarity index 100% rename from scripts/Vega_ Basilisk/.gitkeep rename to scripts/vsc_ddp/.gitkeep diff --git a/scripts/VSC_DDP/dam_ex.job b/scripts/vsc_ddp/dam_ex.job similarity index 100% rename from scripts/VSC_DDP/dam_ex.job rename to scripts/vsc_ddp/dam_ex.job diff --git a/scripts/VSC_DDP/dam_tune_ex.job b/scripts/vsc_ddp/dam_tune_ex.job similarity index 100% rename from scripts/VSC_DDP/dam_tune_ex.job rename to scripts/vsc_ddp/dam_tune_ex.job diff --git a/scripts/VSC_DDP/raise_nn.def b/scripts/vsc_ddp/raise_nn.def similarity index 100% rename from scripts/VSC_DDP/raise_nn.def rename to scripts/vsc_ddp/raise_nn.def diff --git a/scripts/VSC_DDP/wice_ex.job b/scripts/vsc_ddp/wice_ex.job similarity index 100% rename from scripts/VSC_DDP/wice_ex.job rename to scripts/vsc_ddp/wice_ex.job -- GitLab