Psivant / femto

A comprehensive toolkit for predicting free energies
https://psivant.github.io/femto/
MIT License
49 stars 7 forks source link

Control simulation parameters for ATM and change no. of GPU's for REMD #5

Closed sheenamsbaq closed 3 months ago

sheenamsbaq commented 9 months ago

Hello, I have trying to work on a different protein-ligand system for ATM, using er-alpha config-atm.yaml as the template. Some things are not making complete sense to me.

  1. Where can I control the length of the simulation for REMD? (number of cycles I want to establish). I also see n_warmup_steps: 150000 in the config-atm.yaml, but unclear on what it controls.

  2. How can I submit a job with 4 GPU's/nodes for REMD instead of just using 1?

  3. I see while running femto using config-atm.yamland edges.yaml, we still have to define --ligand-1and --ligand-2, while they have already been defined in edges.yaml. This ends up running only the ligand pair I define and not all the edges from the edges.yaml file.

If README.md with CLI based workflow could be provided for one of the examples, that would be super helpful!

SimonBoothroyd commented 3 months ago

Where can I control the length of the simulation for REMD? (number of cycles I want to establish). I also see n_warmup_steps: 150000 in the config-atm.yaml, but unclear on what it controls.

n_warmup_steps is the number of steps to run for each replica, before starting to do any replica swaps. it's kind of like a per replica equilibration.

How can I submit a job with 4 GPU's/nodes for REMD instead of just using 1?

you should make sure to set CUDA_VISIBLE_DEVICES (e.g. CUDA_VISIBLE_DEVICES=0,1,2,3 and the run the command with mpirun,

e.g. mpirun -n 4 femto atm run-workflow ... or mpirun -n 4 my-script.py

I see while running femto using config-atm.yaml and edges.yaml, we still have to define --ligand-1 and --ligand-2, while they have already been defined in edges.yaml. This ends up running only the ligand pair I define and not all the edges from the edges.yaml file.

you're correct at present femto atm run-workflow will only run a single pair, whereas submit-workflows or submit-replicas will submit all edges. having the former loop through all edges when not specified does sound reasonable though!

If README.md with CLI based workflow could be provided for one of the examples, that would be super helpful!

does this help?