-
Notifications
You must be signed in to change notification settings - Fork 10
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
Executing Experiments #30
Comments
hi @Dslab2025 - that's your problem, as the docs say you need to install SLURM before you can use a3fe. |
thus slurm works on workstation? I dont have any idea, as some one told its only for Server or Cluster? Is that true? |
Hi @Dslab2025, you can set up SLURM on your workstation - you might find this guide helpful: https://signac.io/development/2020/06/26/local-SLURM-environment.html. |
Closing as this is due to lack of SLURM, but please feel free to get in contact if you have any issues with the software. |
1 similar comment
Closing as this is due to lack of SLURM, but please feel free to get in contact if you have any issues with the software. |
I am using Local workstation. Its a Linuxmint system with 32core CPU and 2 RTX 40 series GPUs
I dont have SLRUM, but Gromacs and Amber pmemd.cuda installed and called through ~/.bashrc.
As per quick start instruction I copy all the files, but it returns following error
╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
│ in :3 │
│ │
│ 1 import a3fe as a3 │
│ 2 calc = a3.Calculation(ensemble_size=5) │
│ ❱ 3 calc.setup() │
│ 4 calc.get_optimal_lam_vals() │
│ 5 calc.run(adaptive=False, runtime = 5) # Run non-adaptively for 5 ns per replicate │
│ 6 calc.wait() │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/calculation.py:211 in setup │
│ │
│ 208 │ │ │ │ stream_log_level=self.stream_log_level, │
│ 209 │ │ │ ) │
│ 210 │ │ │ self.legs.append(leg) │
│ ❱ 211 │ │ │ leg.setup(configs[leg_type]) │
│ 212 │ │ │
│ 213 │ │ # Save the state │
│ 214 │ │ self.setup_complete = True │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/leg.py:230 in setup │
│ │
│ 227 │ │ if self.prep_stage == _PreparationStage.STRUCTURES_ONLY: │
│ 228 │ │ │ self.parameterise_input(slurm=cfg.slurm) │
│ 229 │ │ if self.prep_stage == _PreparationStage.PARAMETERISED: │
│ ❱ 230 │ │ │ self.solvate_input(slurm=cfg.slurm) # This also adds ions │
│ 231 │ │ if self.prep_stage == _PreparationStage.SOLVATED: │
│ 232 │ │ │ system = self.minimise_input(slurm=cfg.slurm) │
│ 233 │ │ if self.prep_stage == _PreparationStage.MINIMISED: │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/leg.py:466 in solvate_input │
│ │
│ 463 │ │ │ │ fn = _system_prep.slurm_solvate_free │
│ 464 │ │ │ else: │
│ 465 │ │ │ │ raise ValueError("Invalid leg type.") │
│ ❱ 466 │ │ │ self._run_slurm(fn, wait=True, run_dir=self.input_dir, job_name=job_name) │
│ 467 │ │ │ │
│ 468 │ │ │ # Check that the required input files have been produced, since slurm can fa │
│ 469 │ │ │ for file in _PreparationStage.SOLVATED.get_simulation_input_files( │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/leg.py:899 in _run_slurm │
│ │
│ 896 │ │ │ f"{run_dir}/{job_name}.sh", │
│ 897 │ │ ] # The virtual queue adds sbatch │
│ 898 │ │ slurm_file_base = _get_slurm_file_base(slurm_file) │
│ ❱ 899 │ │ job = self.virtual_queue.submit(cmd_list, slurm_file_base=slurm_file_base) │
│ 900 │ │ self._logger.info(f"Submitted job {job}") │
│ 901 │ │ self.jobs.append(job) │
│ 902 │ │ # Update the virtual queue to submit the job │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/_virtual_queue.py:170 in submit │
│ │
│ 167 │ │ self._pre_queue.append(job) │
│ 168 │ │ self._logger.info(f"{job} submitted") │
│ 169 │ │ # Now update - the job will be moved to the real queue if there is space │
│ ❱ 170 │ │ self.update() │
│ 171 │ │ return job │
│ 172 │ │
│ 173 │ def kill(self, job: Job) -> None: │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/_virtual_queue.py:280 in update │
│ │
│ 277 │ │ """Remove jobs from the queue if they have finished, then move jobs from │
│ 278 │ │ the pre-queue to the real queue if there is space.""" │
│ 279 │ │ # First, remove jobs from the queue if they have finished │
│ ❱ 280 │ │ running_slurm_job_ids = self._read_slurm_queue() │
│ 281 │ │ n_running_slurm_jobs = len(running_slurm_job_ids) │
│ 282 │ │ # Remove completed jobs from the queues and update their status │
│ 283 │ │ for job in self._slurm_queue: │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/_virtual_queue.py:231 in _read_slurm_queue │
│ │
│ 228 │ │ │ ] │
│ 229 │ │ │ return running_slurm_job_ids │
│ 230 │ │ │
│ ❱ 231 │ │ return _read_slurm_queue_inner() │
│ 232 │ │
│ 233 │ def _submit_job(self, job_command_list: _List[str]) -> int: │
│ 234 │ │ """ │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/_utils.py:89 in newfn │
│ │
│ 86 │ │ │ attempt = 0 │
│ 87 │ │ │ while attempt < times: │
│ 88 │ │ │ │ try: │
│ ❱ 89 │ │ │ │ │ return func(*args, **kwargs) │
│ 90 │ │ │ │ except exceptions as e: │
│ 91 │ │ │ │ │ logger.error( │
│ 92 │ │ │ │ │ │ f"Exception thrown when attempting to run {func}, attempt " │
│ │
│ /home/nayan/Desktop/a3fe/a3fe/run/_virtual_queue.py:213 in _read_slurm_queue_inner │
│ │
│ 210 │ │ │ ] │
│ 211 │ │ │ │
│ 212 │ │ │ # Create a pipe for the first command │
│ ❱ 213 │ │ │ process = _subprocess.Popen(commands[0], stdout=_subprocess.PIPE) │
│ 214 │ │ │ │
│ 215 │ │ │ # Chain the commands │
│ 216 │ │ │ for cmd in commands[1:]: │
│ │
│ /home/nayan/miniconda3/envs/a3fe/lib/python3.12/subprocess.py:1026 in init │
│ │
│ 1023 │ │ │ │ │ self.stderr = io.TextIOWrapper(self.stderr, │
│ 1024 │ │ │ │ │ │ │ encoding=encoding, errors=errors) │
│ 1025 │ │ │ │
│ ❱ 1026 │ │ │ self._execute_child(args, executable, preexec_fn, close_fds, │
│ 1027 │ │ │ │ │ │ │ │ pass_fds, cwd, env, │
│ 1028 │ │ │ │ │ │ │ │ startupinfo, creationflags, shell, │
│ 1029 │ │ │ │ │ │ │ │ p2cread, p2cwrite, │
│ │
│ /home/nayan/miniconda3/envs/a3fe/lib/python3.12/subprocess.py:1955 in _execute_child │
│ │
│ 1952 │ │ │ │ │ if errno_num != 0: │
│ 1953 │ │ │ │ │ │ err_msg = os.strerror(errno_num) │
│ 1954 │ │ │ │ │ if err_filename is not None: │
│ ❱ 1955 │ │ │ │ │ │ raise child_exception_type(errno_num, err_msg, err_filename) │
│ 1956 │ │ │ │ │ else: │
│ 1957 │ │ │ │ │ │ raise child_exception_type(errno_num, err_msg) │
│ 1958 │ │ │ │ raise child_exception_type(err_msg) │
╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
FileNotFoundError: [Errno 2] No such file or directory: 'squeue'
Plese help me to execute this tool inorder to estimate ABFB
The text was updated successfully, but these errors were encountered: