Molecular chemistry cluster: Difference between revisions

From Synthetic Organic Chemistry
Jump to navigation Jump to search
Wtitulaer (talk | contribs)
No edit summary
Wtitulaer (talk | contribs)
No edit summary
Line 9: Line 9:
Cn142 (like many Linux systems) has the following relevant directories which you should be aware of:
Cn142 (like many Linux systems) has the following relevant directories which you should be aware of:
* '''/opt''' stores all optional software for the node. Most modelling software is actually found at /opt/molmech with soft-link executables in /opt/molmech/bin.
* '''/opt''' stores all optional software for the node. Most modelling software is actually found at /opt/molmech with soft-link executables in /opt/molmech/bin.
* '''/scratch''' is meant for temporary data storage. When submitting computational jobs, this is where the system will most often save your working files. '''Keep in mind /scratch is for temporary storage and hence data can be purged without warning to the users '''.  
* '''/scratch''' is meant for temporary data storage. When submitting computational jobs, this is where the system will most often read&write your files. At the end of the job you should move your output/input to a different directory to allow for enough space for other users. '''Keep in mind /scratch is for temporary storage and hence data can be purged without warning to the users '''.  
* '''/vol ''' which is unlike the others not a local directory but instead a directory shared between multiple nodes. /vol/nmrspectra/ for instance is the directory where you normally retrieve your recorded NMR-spectra from. Keep in mind however not all nodes import all /vol options (the SynOrgChem drive is for instance accessible from lilo but not from cn142).
* '''/vol ''' which is unlike the others not a local directory but instead a directory shared between multiple nodes. /vol/nmrspectra/ for instance is the directory where you normally retrieve your recorded NMR-spectra from. Keep in mind however not all nodes import all /vol options (the SynOrgChem drive is for instance accessible from lilo but not from cn142).
*'''/home/user/''' which is also not a local directory but is your science-account directory (replace user with your username). For instance /home/user/Desktop has the desktop files etc. you would see when you log in to a Huygens pc with your science-account. Keep in mind you have limited storage at this directory so use it wisely.*
*'''/home/user/''' which is also not a local directory but is your science-account directory (replace user with your username). For instance /home/user/Desktop has the desktop files etc. you would see when you log in to a Huygens pc with your science-account. Keep in mind you have limited storage at this directory so use it wisely.*

Revision as of 12:18, 28 June 2024

The molecular chemistry cluster is comprised of cn100-103 and cn142 (see Molecular software). Access to the cluster needs to be requested as detailed in Requesting access.

Logging in on cn142

Once you have access to lilo and are part of the molmech group, you can access cn142. The first step is logging into lilo with 'ssh user@lilo8.science.ru.nl' (described in https://cncz.science.ru.nl/nl/howto/ssh/). Afterwards you can log into cn142 by 'ssh cn142'.

In order for the molecular modelling software to boot correctly, a set of environment variables etc. need to be set. This is achieved by 'source /opt/molmech/login_molmech.sh'. Afterwards programmes on cn142 (apart from Gaussian) should function as intended. Most programs also have their special set of settings which were compiled into modules. To see which modules are available use 'module avail'. Use 'module load X' to load module X and use 'module unload X' to unload it again. Additional options can be viewed with 'module --help'.

Cn142 directory structure

Cn142 (like many Linux systems) has the following relevant directories which you should be aware of:

  • /opt stores all optional software for the node. Most modelling software is actually found at /opt/molmech with soft-link executables in /opt/molmech/bin.
  • /scratch is meant for temporary data storage. When submitting computational jobs, this is where the system will most often read&write your files. At the end of the job you should move your output/input to a different directory to allow for enough space for other users. Keep in mind /scratch is for temporary storage and hence data can be purged without warning to the users .
  • /vol which is unlike the others not a local directory but instead a directory shared between multiple nodes. /vol/nmrspectra/ for instance is the directory where you normally retrieve your recorded NMR-spectra from. Keep in mind however not all nodes import all /vol options (the SynOrgChem drive is for instance accessible from lilo but not from cn142).
  • /home/user/ which is also not a local directory but is your science-account directory (replace user with your username). For instance /home/user/Desktop has the desktop files etc. you would see when you log in to a Huygens pc with your science-account. Keep in mind you have limited storage at this directory so use it wisely.*

On cn142 we use SLURM for managing computational resources among so-called jobs: computational tasks. With a SLURM submission script for instance you can specify the amount of memory & CPU needed for your job and SLURM will then schedule your job and those of other users. For this purpose you submit a job to a partition: a sort of queue which specifies which nodes/computers the job can go to, who can submit jobs and if there are time or memory restrictions. In our case this is generally the partition molmech which will run the job on cn142. Should you wish to run larger jobs (for instance large-scale dockings with DOCK 3.8), you may need to submit the job to a different partition, which likely requires different permissions as well.

SLURM is very efficient at managing the resources of computing node(s) but it does not generally recognize commands running locally from users. For instance if you use python on cn142 locally, this is not communicated well to SLURM job scheduler. Hence, when you require multiple cores, a GPU or more than 8 GB RAM, you should ensure you submit your calculating task as a SLURM job. Depending on the software you are using, there are already pre-written examples of how to do this. Should you find this challenging, feel free to contact either wtitulaer or C&CZ.

Small guide for first time Linux users

I would recommend following this guide if this is your first-time using Linux: https://ubuntu.com/tutorials/command-line-for-beginners#1-overview (taken from the TheoChem wiki). But here follows a list of commands that may be useful which may not be in your usual tutorial (keep in mind this list may not be comprehensive): ncdu scontrol show node cn142 sinfo squeueu sbatch kill top u module ln -s