Skip to content
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

MATLAB parpool size #25

Open
asarnow opened this issue Oct 23, 2023 · 1 comment
Open

MATLAB parpool size #25

asarnow opened this issue Oct 23, 2023 · 1 comment
Labels
usage Usage issues and workarounds

Comments

@asarnow
Copy link

asarnow commented Oct 23, 2023

I am having trouble finding where the pool size is specified for various steps. I see matlab_workers for DynamoTemplateMatching (=1), and the general jobs_per_node (=1) and gpus_per_node (=2). Running GCTFCtfphaseflipCTFCorrection step with CTFFIND4 two jobs are run simultaneously, which I would like to increase. Does it use the gpus_per_node parameter even with CTFFIND4 or is there another variable that should be used?

I am running TomoBEAR in a full MATLAB install, on a workstation with 32x physical cores and 2x A6000 GPUs.

Thanks,
-da

@ArtsemiY
Copy link
Member

ArtsemiY commented Oct 25, 2023

Hi Daniel (@asarnow ),
Currently TomoBEAR uses maximum available (which is all identifiable) CPU workers in your system and is limited by MATLAB parallel profile preferences (if any are set). Regarding the module GCTFCtfphaseflipCTFCorrection, the default there for "execution_method" is "parallel", which means that module already should run in parallel on N tomograms, where N is the number of the available CPU workers.
If you want to use CTFFIND4, you need to setup two parameters:

  • set path to binary/binary name (if in PATH alredy) of CTFFIND4 in variable "ctf_correction_command" in the "general" section of the configurations/defaults.json file
  • set "ctf_estimation_method" value to "ctffind" in your input configuration file, like below:
...
"GCTFCtfphaseflipCTFCorrection": {
        "ctf_estimation_method": "ctffind"
    },
...

If that still doesn't help, probably you may also want to try to check your Parallel Preferences in MATLAB to change "Preferred number of workers in a parallel pool".

Let me know if that was helpful!

P.S. The other parameters (jobs_per_node and gpus_per_node) you mentioned are for SLURM submission, which is under refactoring currently... but anyway doesn't matter for this particular issue.

@ArtsemiY ArtsemiY added the usage Usage issues and workarounds label Oct 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
usage Usage issues and workarounds
Projects
None yet
Development

No branches or pull requests

2 participants