From 1ad0deb5ea60976f512994fd36fa1c661b84ed16 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Sat, 6 Aug 2022 01:43:52 +0200 Subject: [PATCH 001/165] change theme to pydata and add sphinx-panels --- source/_static/vsc-logo-1.png | Bin 0 -> 29434 bytes source/access/getting_access.rst | 184 ++++++++++++++++--------------- source/conf.py | 16 ++- 3 files changed, 111 insertions(+), 89 deletions(-) create mode 100644 source/_static/vsc-logo-1.png diff --git a/source/_static/vsc-logo-1.png b/source/_static/vsc-logo-1.png new file mode 100644 index 0000000000000000000000000000000000000000..900b28c979bca327cfbf6e5e9660922ecd497371 GIT binary patch literal 29434 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 @@ -17,7 +14,7 @@ In order to use the infrastructure of the VSC, you need a VSC-user ID, also called a VSC account. Check the `VSC website `_ for conditions. -All VSC-accounts start with the letters \\"vsc\" followed by a +All VSC-accounts start with the letters ``vsc`` followed by a five-digit number. The first digit gives information about your home institution. There is no relationship with your name, nor is the information about the link between VSC-accounts and your name publicly @@ -60,9 +57,22 @@ A key pair consists of a private and a public key. How to generate such a key pair depends on your operating system. We describe the generation of key pairs in the client sections for -- :ref:`Linux`, -- :ref:`Windows ` and -- :ref:`macOS` (formerly OS X). +.. panels:: + + .. link-button:: generating keys linux + :type: ref + :text: Linux + :classes: btn-outline-primary btn-block + + .. link-button:: generating keys windows + :type: ref + :text: Windows + :classes: btn-outline-primary btn-block + + .. link-button:: generating keys macos + :type: ref + :text: macOS + :classes: btn-outline-primary btn-block Without a key pair, you won't be able to apply for a VSC account. @@ -94,83 +104,83 @@ Applying for the account Once you have a valid public/private key pair, you can submit an account request. The following algorithm guides you to the appropriate approach. -Users from the KU Leuven and UHasselt association -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -UHasselt has an agreement with KU Leuven to run a shared infrastructure. -Therefore the procedure is the same for both institutions. - -Who? - - Access is available for faculty, students (under faculty - supervision), and researchers of the KU Leuven, UHasselt and their - associations. - -How? - -- Researchers with a regular personnel account (u-number) can use - the :ref:`generic procedure `. -- If you are in one of the higher education institutions associated - with KU Leuven, the :ref:`generic procedure ` - may not work. In that case, please e-mail hpcinfo@kuleuven.be - to get an account. You will have to provide a public ssh key generated - as described above. -- Lecturers of KU Leuven and UHasselt that need HPC access for giving - their courses: The procedure requires action both from the lecturers - and from the students. Lecturers should follow the :ref:`specific - procedure for lecturers `, - while the students should simply apply for the account through the - :ref:`generic procedure `. - -Users of Ghent University Association -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -All information about the access policy is available `in -English `_ at the `UGent -HPC web pages `_. - -- Researchers and students can use the :ref:`generic procedure `. - -Users of the Antwerp University Association (AUHA) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -Who? - - Access is available for faculty, students (master's projects under - faculty supervision), and researchers of the AUHA. - -How? - -- Researchers can use the :ref:`generic procedure `. -- Master students can also use the infrastructure for their master - thesis work. The promotor of the thesis should first send a - motivation to hpc@uantwerpen.be and then the :ref:`generic - procedure ` should be followed (using your - student UAntwerpen id) to request the account. - -Users of Brussels University Association -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. tabbed:: KU Leuven/UHasselt -All information about the access policy is available on the `VUB -HPC documentation website `_. - -- Researchers can use the :ref:`generic procedure `. -- Master students can also use the infrastructure for their master - thesis work. The promotor of the thesis should first send a - motivation to hpc@vub.be and then the :ref:`generic - procedure ` should be followed to request the account. - -Everyone else -^^^^^^^^^^^^^ - -Who? - - Check that `you are eligible to use VSC infrastructure `_. + UHasselt has an agreement with KU Leuven to run a shared infrastructure. + Therefore the procedure is the same for both institutions. + + Who? + Access is available for faculty students (under faculty + supervision), and researchers of the KU Leuven, UHasselt and their + associations. + + How? + Researchers with a regular personnel account (u-number) can use + the :ref:`generic procedure `. + - If you are in one of the higher education institutions associated + with KU Leuven, the :ref:`generic procedure ` + may not work. In that case, please e-mail hpcinfo@kuleuven.be + to get an account. You will have to provide a public ssh key generated + as described above. + - Lecturers of KU Leuven and UHasselt that need HPC access for giving + their courses: The procedure requires action both from the lecturers + and from the students. Lecturers should follow the :ref:`specific + procedure for lecturers `, + while the students should simply apply for the account through the + :ref:`generic procedure `. + +.. tabbed:: UGent + + All information about the access policy is available `in + English `_ at the `UGent + HPC web pages `_. + + Who? + Access is available for faculty students (master's projects under + faculty supervision), and researchers of UGent. + + How? + Researchers and students can use the :ref:`generic procedure `. -How? +.. tabbed:: UAntwerp (AUHA) - Ask your VSC contact for help. If you don't have a VSC contact yet, and please - `get in touch`_ with us. + Who? + Access is available for faculty students (master's projects under + faculty supervision), and researchers of the AUHA. + + How? + Researchers can use the :ref:`generic procedure `. + - Master students can also use the infrastructure for their master + thesis work. The promotor of the thesis should first send a + motivation to hpc@uantwerpen.be and then the :ref:`generic + procedure ` should be followed (using your + student UAntwerpen id) to request the account. + +.. tabbed:: VUB + + All information about the access policy is available on the `VUB + HPC documentation website `_. + + Who? + Access is available for faculty students (under faculty + supervision), and researchers of VUB and their associations. + + How? + Researchers with a regular VUB account (`@vub.be`) can use + the :ref:`generic procedure `. + - Master students can also use the infrastructure for their master + thesis work. The promotor of the thesis should first send a + motivation to hpc@vub.be and then the :ref:`generic + procedure ` should be followed to request the account. + +.. tabbed:: Others + + Who? + Check that `you are eligible to use VSC infrastructure `_. + + How? + Ask your VSC contact for help. If you don't have a VSC contact yet, and please + `get in touch`_ with us. .. _generic access procedure: @@ -211,15 +221,15 @@ Next steps Register for an HPC Introduction course. These are organized at all universities on a regular basis. -.. note:: - - For KU Leuven users: if there is no course announced please register to our `training - waiting list`_ and we will organize a new session as soon as we get a few - people interested in it. training waiting list - Information on our training program and the schedule is available on the `VSC website `_. +.. note:: + + :badge:`KU Leuven,badge-primary` if there is no course announced, users of + KU Leuven can register to the `training waiting list`_ and we will organize + a new session as soon as we get a few people interested in it. + Additional information ---------------------- diff --git a/source/conf.py b/source/conf.py index b1d9a95c..afb79fa3 100644 --- a/source/conf.py +++ b/source/conf.py @@ -42,6 +42,7 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ + 'sphinx_panels', 'sphinx.ext.todo', 'sphinx.ext.coverage', 'sphinx.ext.ifconfig', @@ -81,19 +82,30 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = 'classic' +html_theme = 'pydata_sphinx_theme' # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the # documentation. # -# html_theme_options = {} +html_theme_options = { + "show_prev_next": False, + "github_url": "https://github.com/vscentrum", + "twitter_url": "https://twitter.com/VSC_HPC", +} # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] +# Bootstrap CSS classes from sphinx-panels +# disable to avoid conflicts with Bootstrap in pydata-sphinx-theme +panels_add_bootstrap_css = False + +# Logo in top bar +html_logo = "_static/vsc-logo-1.png" + # Custom sidebar templates, must be a dictionary that maps document names # to template names. # From 8ef2eef34d10714a7f33483c6d1853c481d36020 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Sat, 6 Aug 2022 01:44:17 +0200 Subject: [PATCH 002/165] add external links to left sidebar --- source/_static/fwo-logo.jpg | Bin 0 -> 24101 bytes source/_static/prace-logo.png | Bin 0 -> 140449 bytes source/_static/vsc-logo-2.png | Bin 0 -> 28312 bytes source/_templates/sidebar-links.html | 15 +++++++++++++++ source/conf.py | 5 +++-- 5 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 source/_static/fwo-logo.jpg create mode 100644 source/_static/prace-logo.png create mode 100644 source/_static/vsc-logo-2.png create mode 100644 source/_templates/sidebar-links.html diff --git a/source/_static/fwo-logo.jpg b/source/_static/fwo-logo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1ee2f3f673d0f1d1f4257f40fe9ed6b13855a4df GIT binary patch literal 24101 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 CrA8D0 literal 0 HcmV?d00001 diff --git a/source/_static/prace-logo.png b/source/_static/prace-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8c5884566c906fc80be247780e57cc0a65f53166 GIT binary patch literal 140449 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


uy)Bljzj_?^0vZGPl|{K?icv8QkjAgfrxTFB(+ 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 literal 0 HcmV?d00001 diff --git a/source/_static/vsc-logo-2.png b/source/_static/vsc-logo-2.png new file mode 100644 index 0000000000000000000000000000000000000000..c2d1dee8e232157841a5a2bd89ba53cf89267e4c GIT binary patch literal 28312 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 literal 0 HcmV?d00001 diff --git a/source/_templates/sidebar-links.html b/source/_templates/sidebar-links.html new file mode 100644 index 00000000..105c3720 --- /dev/null +++ b/source/_templates/sidebar-links.html @@ -0,0 +1,15 @@ + +
+

+ +

+

Need Help?

+

+ Get in touch with our team +

+

Supported by

+

+ + +

+
diff --git a/source/conf.py b/source/conf.py index afb79fa3..c1d208c6 100644 --- a/source/conf.py +++ b/source/conf.py @@ -114,8 +114,9 @@ # default: ``['localtoc.html', 'relations.html', 'sourcelink.html', # 'searchbox.html']``. # -# html_sidebars = {} - +html_sidebars = { + "**": ["search-field.html", "sidebar-nav-bs.html", "sidebar-links.html"] +} # -- Options for HTMLHelp output --------------------------------------------- From ab88c0e3d20aa559a1675c76ae4ce115d9019dd3 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Sat, 6 Aug 2022 12:15:28 +0200 Subject: [PATCH 003/165] add pydata theme and sphinx-panels to Python requirements --- requirements.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/requirements.txt b/requirements.txt index 67994cf2..c332a313 100644 --- a/requirements.txt +++ b/requirements.txt @@ -10,6 +10,7 @@ Jinja2==3.0.3 livereload==2.6.3 MarkupSafe==2.0.1 packaging==21.2 +pydata-sphinx-theme~=0.8.0 Pygments==2.10.0 pyparsing==2.4.7 pytz==2021.3 @@ -18,6 +19,7 @@ six==1.16.0 snowballstemmer==2.2.0 Sphinx==4.3.0 sphinx-autobuild==2021.3.14 +sphinx-panels~=0.6.0 sphinxcontrib-applehelp==1.0.2 sphinxcontrib-devhelp==1.0.2 sphinxcontrib-htmlhelp==2.0.0 From 7fdf20b140128331965ac38bb83a9d7eb24c688f Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 21 Oct 2022 00:06:37 +0200 Subject: [PATCH 004/165] adapt access section to pydata theme --- source/access/access_and_data_transfer.rst | 13 +- source/access/generating_keys.rst | 49 ++++++++ ...enssh.rst => generating_keys_on_linux.rst} | 38 ++---- ...n_os_x.rst => generating_keys_on_os_x.rst} | 18 +-- source/access/generating_keys_on_windows.rst | 7 +- .../access/generating_keys_with_mobaxterm.rst | 5 +- source/access/generating_keys_with_putty.rst | 9 +- source/access/getting_access.rst | 114 +----------------- source/access/index.rst | 52 ++++++++ source/access/linux_client.rst | 2 + source/access/macos_client.rst | 1 + source/access/windows_client.rst | 1 + 12 files changed, 151 insertions(+), 158 deletions(-) create mode 100644 source/access/generating_keys.rst rename source/access/{generating_keys_with_openssh.rst => generating_keys_on_linux.rst} (80%) rename source/access/{generating_keys_with_openssh_on_os_x.rst => generating_keys_on_os_x.rst} (71%) create mode 100644 source/access/index.rst diff --git a/source/access/access_and_data_transfer.rst b/source/access/access_and_data_transfer.rst index f175d73a..c7533243 100644 --- a/source/access/access_and_data_transfer.rst +++ b/source/access/access_and_data_transfer.rst @@ -1,7 +1,8 @@ .. _acccess_data_transfer: -Access and data transfer -======================== +######################## +Access and Data Transfer +######################## Before you can really start using one of the clusters, there are several things you need to do or know: @@ -18,8 +19,8 @@ need to use on your client system depends on its operating system: :maxdepth: 2 windows_client - macos_client linux_client + macos_client .. note:: When logging in to a KU Leuven cluster, take a look at the page on @@ -63,9 +64,9 @@ Optionally, if you wish to use programs with a graphical user interface, you'll need an X server on your client system. Again, this depends on the latter's operating system: - - :ref:`Windows ` - - :ref:`Linux ` - - :ref:`macOS/OS X ` +- :ref:`Windows ` +- :ref:`Linux ` +- :ref:`macOS/OS X ` VPN diff --git a/source/access/generating_keys.rst b/source/access/generating_keys.rst new file mode 100644 index 00000000..48602221 --- /dev/null +++ b/source/access/generating_keys.rst @@ -0,0 +1,49 @@ +############# +Security Keys +############# + +Unlike your institute account, VSC accounts don't use regular fixed +passwords but a key pair consisting of a public an private key because +that is a more secure authentication technique. To apply for a VSC +account, you need a public/private key pair. + +.. _create key pair: + +Create a public/private key pair +================================ + +A key pair consists of a private and a public key. + +#. The private key is stored on the computer(s) you use to access the VSC + infrastructure and always stays there. +#. The public key is stored on the VSC systems you want to access, allowing + to prove your identity through the corresponding private key. + +.. warning:: + + It is clear from the above that it is very important to protect your + private key well. Therefore: + + - You should choose a strong passphrase to protect your private key. + - You should not share your key pair with other users. + - If you have accounts at multiple supercomputer centers (or on other + systems that use SSH), you should seriously consider using a + different key pair for each of those accounts. In that way, if a key + would get compromised, the damage can be controlled. + - For added security, you may also consider to use a different key pair + for each computer you use to access your VSC account. If your + computer is stolen, it is then easy to disable access from that + computer while you can still access your VSC account from all your + other computers. The procedure is explained on a separate web + page ":ref:`access from multiple machines`". + +How to generate such a key pair depends on your operating system. We +describe the generation of key pairs in the client sections below: + +.. toctree:: + :maxdepth: 2 + + generating_keys_on_windows + generating_keys_on_linux + generating_keys_on_os_x + diff --git a/source/access/generating_keys_with_openssh.rst b/source/access/generating_keys_on_linux.rst similarity index 80% rename from source/access/generating_keys_with_openssh.rst rename to source/access/generating_keys_on_linux.rst index d85effe8..cc0fbfc4 100644 --- a/source/access/generating_keys_with_openssh.rst +++ b/source/access/generating_keys_on_linux.rst @@ -1,35 +1,19 @@ .. _generating keys linux: -Generating keys with OpenSSH -============================ +######################## +Generating keys on Linux +######################## -Prerequisite: OpenSSH ---------------------- +Requirements: -Linux -~~~~~ +* Linux operating system +* OpenSSH On all popular Linux distributions, the OpenSSH software is readily available, and most often installed by default. -Windows -~~~~~~~ - -You can use OpenSSH on Windows also if you - -- :ref:`download and setup MobaXterm `, -- use Windows Subsystem for Linux (WSL or WSL2), or -- simply from PowerShell on recent versions of Windows. - -macOS -~~~~~ - -macOS comes with its own implementation of OpenSSH, so you don't -need to install any third-party software to use it. Just open a Terminal -window and jump in! - Check the OpenSSH installation -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +============================== You can check whether the OpenSSH software is installed by opening a terminal and typing: @@ -41,7 +25,7 @@ a terminal and typing: Generating a public/private key pair ------------------------------------- +==================================== A key pair might already be present in the default location inside your home directory: @@ -91,7 +75,7 @@ your files, unless you use an :ref:`SSH agent`. Converting SSH2 keys to OpenSSH format --------------------------------------- +====================================== *This section is only relevant if you did not use OpenSSH (as described above) to generate an SSH key.* @@ -107,8 +91,8 @@ the following way: .. include:: links.rst -Links ------ +Additional information +====================== - `ssh-keygen manual page`_ - `ssh manual page`_ diff --git a/source/access/generating_keys_with_openssh_on_os_x.rst b/source/access/generating_keys_on_os_x.rst similarity index 71% rename from source/access/generating_keys_with_openssh_on_os_x.rst rename to source/access/generating_keys_on_os_x.rst index 0624aba5..22aaf2ff 100644 --- a/source/access/generating_keys_with_openssh_on_os_x.rst +++ b/source/access/generating_keys_on_os_x.rst @@ -1,10 +1,13 @@ .. _generating keys macos: -Generating keys with OpenSSH on macOS -===================================== +######################## +Generating keys on macOS +######################## -Prerequisite: OpenSSH ---------------------- +Requirements: + +* macOS operating system +* OpenSSH Every macOS install comes with its own implementation of OpenSSH, so you don't need to install any third-party software to use it. Just open a @@ -12,10 +15,9 @@ Terminal window and jump in! Because of this, you can use the same commands as specified in the on the ":ref:`generating keys linux`" section to access the cluster and transfer files. - Generating a public/private key pair ------------------------------------- +==================================== Generating a public/private key pair is identical to what is described -for the :ref:`linux client `, that is, by using the ssh-keygen command -in a Terminal window. +for the :ref:`linux client `, that is, by using the +ssh-keygen command in a Terminal window. diff --git a/source/access/generating_keys_on_windows.rst b/source/access/generating_keys_on_windows.rst index c5c76bbb..11eee86b 100644 --- a/source/access/generating_keys_on_windows.rst +++ b/source/access/generating_keys_on_windows.rst @@ -7,5 +7,8 @@ To get access from a Windows computer, we currently provide documentation for tw :ref:`PuTTY ` and :ref:`MobaXterm `, both of which require a public/private key pair in a different format: -* :ref:`generate a key pair with PuTTY ` -* :ref:`generate a key pair with MobaXterm ` +.. toctree:: + :maxdepth: 2 + + generating_keys_with_putty + generating_keys_with_mobaxterm diff --git a/source/access/generating_keys_with_mobaxterm.rst b/source/access/generating_keys_with_mobaxterm.rst index 0de91ebc..57d10a93 100644 --- a/source/access/generating_keys_with_mobaxterm.rst +++ b/source/access/generating_keys_with_mobaxterm.rst @@ -1,7 +1,8 @@ .. _generating keys mobaxterm: -Create an SSH key pair for use with MobaXterm ---------------------------------------------------------- +############################## +Generating keys with MobaXterm +############################## The following steps explain how to generate an SSH key pair in ``OpenSSH`` format using the MobaXterm application. diff --git a/source/access/generating_keys_with_putty.rst b/source/access/generating_keys_with_putty.rst index a0124d00..11776636 100644 --- a/source/access/generating_keys_with_putty.rst +++ b/source/access/generating_keys_with_putty.rst @@ -1,10 +1,13 @@ .. _generating keys putty: +########################## Generating keys with PuTTY -========================== +########################## -Prerequisite: PuTTY -------------------- +Requirements: + +* Windows operating system +* PuTTY By default, there is no SSH client software available on Windows, so you will typically have to install one yourself. We recommend to use `PuTTY`_, diff --git a/source/access/getting_access.rst b/source/access/getting_access.rst index bdb3fb8b..3ddc38fa 100644 --- a/source/access/getting_access.rst +++ b/source/access/getting_access.rst @@ -1,109 +1,15 @@ -Getting access +Getting Access ============== -New users of the VSC clusters should take the following three steps to get access: - -#. :ref:`create a public/private key pair ` -#. :ref:`apply for a VSC account ` -#. :ref:`login to the cluster ` - -VSC accounts ------------- - -In order to use the infrastructure of the VSC, you need a VSC-user ID, -also called a VSC account. Check the `VSC website `_ -for conditions. - -All VSC-accounts start with the letters ``vsc`` followed by a -five-digit number. The first digit gives information about your home -institution. There is no relationship with your name, nor is the -information about the link between VSC-accounts and your name publicly -accessible. - -Your VSC account gives you access to most of the VSC Tier-2 infrastructure, -though for some more specialized hardware you may have to ask access separately. -The rationale is that we want to ensure that that specialized (usually rather -expensive) hardware is used efficiently for the type of applications it was -purchased for. Contact your `local VSC coordinator `_ to arrange -access when required. - -For the main Tier-1 compute cluster you need to submit a -`project application `_ (or you should be -covered by a project application within your research group). - - -.. _account request: - -How to request an account? --------------------------- - -Unlike your institute account, VSC accounts don't use regular fixed -passwords but a key pair consisting of a public an private key because -that is a more secure authentication technique. To apply for a VSC -account, you need a public/private key pair. - -.. _create key pair: - -Create a public/private key pair -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -A key pair consists of a private and a public key. - -#. The private key is stored on the computer(s) you use to access the VSC - infrastructure and always stays there. -#. The public key is stored on the VSC systems you want to access, allowing - to prove your identity through the corresponding private key. - -How to generate such a key pair depends on your operating system. We -describe the generation of key pairs in the client sections for - -.. panels:: - - .. link-button:: generating keys linux - :type: ref - :text: Linux - :classes: btn-outline-primary btn-block - - .. link-button:: generating keys windows - :type: ref - :text: Windows - :classes: btn-outline-primary btn-block - - .. link-button:: generating keys macos - :type: ref - :text: macOS - :classes: btn-outline-primary btn-block - -Without a key pair, you won't be able to apply for a VSC account. - -.. warning:: - - It is clear from the above that it is very important to protect your - private key well. Therefore: - - - You should choose a strong passphrase to protect your private key. - - You should not share your key pair with other users. - - If you have accounts at multiple supercomputer centers (or on other - systems that use SSH), you should seriously consider using a - different key pair for each of those accounts. In that way, if a key - would get compromised, the damage can be controlled. - - For added security, you may also consider to use a different key pair - for each computer you use to access your VSC account. If your - computer is stolen, it is then easy to disable access from that - computer while you can still access your VSC account from all your - other computers. The procedure is explained on a separate web - page ":ref:`access from multiple machines`". - -Your VSC account is currently managed through your institute account. +Once you have a valid :ref:`public/private key pair`, you can +submit an account request. The following algorithm guides you to the +appropriate approach for each institution. .. _apply for account: Applying for the account ~~~~~~~~~~~~~~~~~~~~~~~~ -Once you have a valid public/private key pair, you can submit an account -request. The following algorithm guides you to the appropriate approach. - .. tabbed:: KU Leuven/UHasselt UHasselt has an agreement with KU Leuven to run a shared infrastructure. @@ -234,18 +140,6 @@ Information on our training program and the schedule is available on the Additional information ---------------------- -Before you apply for VSC account, it is useful to first check whether -the infrastructure is suitable for your application. Windows or macOS -programs for instance cannot run on our infrastructure as we use the -Linux operating system on the clusters. The infrastructure also should -not be used to run applications for which the compute power of a good -laptop is sufficient. The pages on the :ref:`tier1 hardware` and -:ref:`tier2 hardware` -in this part of the website give a high-level description of our -infrastructure. You can find more detailed information in the user -documentation on the user portal. When in doubt, you can also contact -your `local support team `_. This does not require a VSC account. - Your account also includes two “blocks” of disk space: your home directory and data directory. Both are accessible from all VSC clusters. When you log in to a particular cluster, you will also be assigned one diff --git a/source/access/index.rst b/source/access/index.rst new file mode 100644 index 00000000..734ec013 --- /dev/null +++ b/source/access/index.rst @@ -0,0 +1,52 @@ +.. _access: + +############################## +:fa:`user-circle` VSC Accounts +############################## + +In order to use the infrastructure of the VSC, you need a VSC-user ID, +also called a VSC account. Check the `VSC website `_ +for conditions. + +All VSC-accounts start with the letters ``vsc`` followed by a +five-digit number. The first digit gives information about your home +institution. There is no relationship with your name, nor is the +information about the link between VSC-accounts and your name publicly +accessible. + +Your VSC account gives you access to most of the VSC Tier-2 infrastructure, +though for some more specialized hardware you may have to ask access separately. +The rationale is that we want to ensure that that specialized (usually rather +expensive) hardware is used efficiently for the type of applications it was +purchased for. Contact your `local VSC coordinator `_ to arrange +access when required. + +For the main Tier-1 compute cluster you need to submit a +`project application `_ (or you should be +covered by a project application within your research group). + +Before you apply for VSC account, it is useful to first check whether +the infrastructure is suitable for your application. Windows or macOS +programs for instance cannot run on our infrastructure as we use the +Linux operating system on the clusters. The infrastructure also should +not be used to run applications for which the compute power of a good +laptop is sufficient. The pages on the :ref:`tier1 hardware` and +:ref:`tier2 hardware` +in this part of the website give a high-level description of our +infrastructure. You can find more detailed information in the user +documentation on the user portal. When in doubt, you can also contact +your `local support team `_. This does not require a VSC account. + +Access +====== + +New users of the VSC clusters should take the following three steps to get access: + +.. toctree:: + :maxdepth: 2 + :numbered: 2 + + generating_keys + getting_access + access_and_data_transfer + diff --git a/source/access/linux_client.rst b/source/access/linux_client.rst index 23c076a3..e881c8e4 100644 --- a/source/access/linux_client.rst +++ b/source/access/linux_client.rst @@ -52,6 +52,8 @@ Data can easily be transferred to and from remote systems using the :ref:`OpenSSH sftp and scp commands `. +.. _Linux gui: + Display graphical programs ~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/source/access/macos_client.rst b/source/access/macos_client.rst index ca4766ba..e95a97f7 100644 --- a/source/access/macos_client.rst +++ b/source/access/macos_client.rst @@ -40,6 +40,7 @@ Data can be transferred using - Secure FTP (SFTP) with the :ref:`OpenSSH sftp and scp commands `, or - GUI clients such as :ref:`Cyberduck or FileZilla `. +.. _macOS gui: Display graphical programs ~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/source/access/windows_client.rst b/source/access/windows_client.rst index a942e0a3..c8d1b8a5 100644 --- a/source/access/windows_client.rst +++ b/source/access/windows_client.rst @@ -47,6 +47,7 @@ Two GUI clients SFTP clients for Windows are recommended: - :ref:`FileZilla` - :ref:`WinSCP` +.. _Windows gui: Display graphical programs ~~~~~~~~~~~~~~~~~~~~~~~~~~ From 4a68e8c1001bd4937be0ff4bad4fbb56445d0852 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 21 Oct 2022 00:07:01 +0200 Subject: [PATCH 005/165] adapt jobs section to pydata theme --- source/jobs/index.rst | 16 ++++++++++++++++ source/jobs/running_jobs.rst | 27 +++++++++++++++++++-------- 2 files changed, 35 insertions(+), 8 deletions(-) create mode 100644 source/jobs/index.rst diff --git a/source/jobs/index.rst b/source/jobs/index.rst new file mode 100644 index 00000000..4dc7e9ef --- /dev/null +++ b/source/jobs/index.rst @@ -0,0 +1,16 @@ +################# +:fa:`rocket` Jobs +################# + +An HPC cluster is a multi-user system. This implies that your computations +run on a part of the cluster that will be temporarily reserved for you by +the scheduler. + +.. toctree:: + :maxdepth: 2 + :numbered: 2 + + running_jobs + ../software/software_stack + ../software/software_development + diff --git a/source/jobs/running_jobs.rst b/source/jobs/running_jobs.rst index b9ee76d7..5b37b216 100644 --- a/source/jobs/running_jobs.rst +++ b/source/jobs/running_jobs.rst @@ -83,15 +83,18 @@ Every job script has the same basic structure. to use ``.pbs`` since that allows support staff to easily identify your job script. -More information is available on +More information is available on: + +.. toctree:: + :maxdepth: 2 + + Job resources + Job names, output files and notifications + Credit system -- :ref:`specifying job resources `, -- :ref:`specifying job names, output files and notifications - `, -- using the :ref:`credit system ` (KU Leuven/UHasselt - infrastructure and Tier-1 only), -- using the :ref:`module system `. +.. sealso:: + Using the :ref:`module system ` Submitting and monitoring a job ------------------------------- @@ -134,7 +137,7 @@ More information is available on .. toctree:: :maxdepth: 3 - submitting and monitoring your jobs + Submitting and monitoring your jobs Job output @@ -200,6 +203,14 @@ Troubleshooting Advanced topics --------------- +.. toctree:: + :maxdepth: 2 + :hidden: + + monitoring_memory_and_cpu_usage_of_programs + worker_framework + checkpointing_framework + - :ref:`monitoring memory and cpu`, which helps to find the right parameters to improve your specification of the job requirements. - :ref:`worker framework`: To manage lots of small jobs on a cluster. The From 888ec0cdf634dc2d539159056d2792c6927e03f7 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 21 Oct 2022 00:07:18 +0200 Subject: [PATCH 006/165] adapt hardware section to pydata theme --- source/hardware.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/hardware.rst b/source/hardware.rst index 07a2427a..7be1b05b 100644 --- a/source/hardware.rst +++ b/source/hardware.rst @@ -1,7 +1,8 @@ .. _hardware: -VSC hardware -============ +######################### +:fa:`server` VSC hardware +######################### .. _tier2 hardware: From d078d9037dbbff755ba8d97d5c24f9c09578c8c9 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 21 Oct 2022 00:07:28 +0200 Subject: [PATCH 007/165] adapt faq section to pydata theme --- source/faq.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/faq.rst b/source/faq.rst index 45191ab1..6c4b3814 100644 --- a/source/faq.rst +++ b/source/faq.rst @@ -1,7 +1,8 @@ .. _faqs: -Frequently asked questions (FAQs) -================================= +########################## +:fa:`question-circle` FAQs +########################## .. _general faqs: From a80e14d7586a192ac0925d0f4a4c513a1e2cede6 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 21 Oct 2022 00:07:47 +0200 Subject: [PATCH 008/165] add TOC to main page --- source/_templates/sidebar-links.html | 6 +++++- source/conf.py | 3 ++- source/index.rst | 9 +++------ 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/source/_templates/sidebar-links.html b/source/_templates/sidebar-links.html index 105c3720..64023ffe 100644 --- a/source/_templates/sidebar-links.html +++ b/source/_templates/sidebar-links.html @@ -1,15 +1,19 @@ -
+ diff --git a/source/conf.py b/source/conf.py index c1d208c6..7e324643 100644 --- a/source/conf.py +++ b/source/conf.py @@ -115,7 +115,8 @@ # 'searchbox.html']``. # html_sidebars = { - "**": ["search-field.html", "sidebar-nav-bs.html", "sidebar-links.html"] + "index": ["search-field.html", "sidebar-links.html"], + "**": ["search-field.html", "sidebar-nav-bs.html", "sidebar-links.html"], } # -- Options for HTMLHelp output --------------------------------------------- diff --git a/source/index.rst b/source/index.rst index 5d3c39bf..9bd61ff6 100644 --- a/source/index.rst +++ b/source/index.rst @@ -9,13 +9,10 @@ Welcome to VSC documentation .. toctree:: :maxdepth: 2 - access/getting_access - access/access_and_data_transfer - software/software_stack - jobs/running_jobs - software/software_development hardware - globus/globus_main_index + access/index + jobs/index faq +.. globus/globus_main_index Feel free to contact :ref:`user support `. From 789de4a00f72d40c536ab4a1aed2176b13afcff7 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 00:19:36 +0100 Subject: [PATCH 009/165] rollback file renames on generating keys docs --- ...erating_keys_on_linux.rst => generating_keys_with_openssh.rst} | 0 ..._keys_on_os_x.rst => generating_keys_with_openssh_on_os_x.rst} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename source/access/{generating_keys_on_linux.rst => generating_keys_with_openssh.rst} (100%) rename source/access/{generating_keys_on_os_x.rst => generating_keys_with_openssh_on_os_x.rst} (100%) diff --git a/source/access/generating_keys_on_linux.rst b/source/access/generating_keys_with_openssh.rst similarity index 100% rename from source/access/generating_keys_on_linux.rst rename to source/access/generating_keys_with_openssh.rst diff --git a/source/access/generating_keys_on_os_x.rst b/source/access/generating_keys_with_openssh_on_os_x.rst similarity index 100% rename from source/access/generating_keys_on_os_x.rst rename to source/access/generating_keys_with_openssh_on_os_x.rst From c05f216a1228c7f08789b11d37cf87cddf226461 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 00:35:17 +0100 Subject: [PATCH 010/165] move sidebar links to the bottom --- source/conf.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/conf.py b/source/conf.py index 7e324643..38a65e76 100644 --- a/source/conf.py +++ b/source/conf.py @@ -92,6 +92,7 @@ "show_prev_next": False, "github_url": "https://github.com/vscentrum", "twitter_url": "https://twitter.com/VSC_HPC", + "left_sidebar_end": ["sidebar-links"], } # Add any paths that contain custom static files (such as style sheets) here, @@ -115,8 +116,8 @@ # 'searchbox.html']``. # html_sidebars = { - "index": ["search-field.html", "sidebar-links.html"], - "**": ["search-field.html", "sidebar-nav-bs.html", "sidebar-links.html"], + "index": ["search-field"], + "**": ["search-field", "sidebar-nav-bs",], } # -- Options for HTMLHelp output --------------------------------------------- From fcb0e57d67f7c4c9e7c9491d9e703958bd15448d Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 00:37:00 +0100 Subject: [PATCH 011/165] only show TOC in second sidebar --- source/conf.py | 1 + 1 file changed, 1 insertion(+) diff --git a/source/conf.py b/source/conf.py index 38a65e76..0011a95b 100644 --- a/source/conf.py +++ b/source/conf.py @@ -93,6 +93,7 @@ "github_url": "https://github.com/vscentrum", "twitter_url": "https://twitter.com/VSC_HPC", "left_sidebar_end": ["sidebar-links"], + "page_sidebar_items": ["page-toc"], } # Add any paths that contain custom static files (such as style sheets) here, From 5403139916bf2d2f67df92db676e2d34410b849b Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 00:42:03 +0100 Subject: [PATCH 012/165] use new icon format in navigation bar --- source/conf.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/source/conf.py b/source/conf.py index 0011a95b..eec0664b 100644 --- a/source/conf.py +++ b/source/conf.py @@ -90,10 +90,21 @@ # html_theme_options = { "show_prev_next": False, - "github_url": "https://github.com/vscentrum", - "twitter_url": "https://twitter.com/VSC_HPC", "left_sidebar_end": ["sidebar-links"], "page_sidebar_items": ["page-toc"], + "icon_links": [ + { + "name": "GitHub", + "url": "https://github.com/vscentrum", + "icon": "fa-brands fa-square-github", + "type": "fontawesome", + }, + { + "name": "Twitter", + "url": "https://twitter.com/VSC_HPC", + "icon": "fa-brands fa-square-twitter", + }, + ], } # Add any paths that contain custom static files (such as style sheets) here, From d8c9f63cf408c2f1248bc40763a54d8547cb5bda Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 00:49:42 +0100 Subject: [PATCH 013/165] add button to edit documentation pages --- source/conf.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/source/conf.py b/source/conf.py index eec0664b..af258db7 100644 --- a/source/conf.py +++ b/source/conf.py @@ -89,9 +89,10 @@ # documentation. # html_theme_options = { - "show_prev_next": False, "left_sidebar_end": ["sidebar-links"], - "page_sidebar_items": ["page-toc"], + "page_sidebar_items": ["page-toc", "edit-this-page"], + "use_edit_page_button": True, + "show_prev_next": False, "icon_links": [ { "name": "GitHub", @@ -132,6 +133,14 @@ "**": ["search-field", "sidebar-nav-bs",], } +# Edit this page button +html_context = { + "github_user": "hpcleuven", + "github_repo": "VscDocumentation", + "github_version": "master", + "doc_path": "source", +} + # -- Options for HTMLHelp output --------------------------------------------- # Output file base name for HTML help builder. From 88d9438be6c4ed80a3f349668f873b539b90d091 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 01:02:26 +0100 Subject: [PATCH 014/165] replace deprecated sphinx-panels with sphinx-design --- source/access/getting_access.rst | 156 ++++++++++++++++--------------- source/conf.py | 6 +- 2 files changed, 80 insertions(+), 82 deletions(-) diff --git a/source/access/getting_access.rst b/source/access/getting_access.rst index 3ddc38fa..a72949ae 100644 --- a/source/access/getting_access.rst +++ b/source/access/getting_access.rst @@ -10,83 +10,85 @@ appropriate approach for each institution. Applying for the account ~~~~~~~~~~~~~~~~~~~~~~~~ -.. tabbed:: KU Leuven/UHasselt - - UHasselt has an agreement with KU Leuven to run a shared infrastructure. - Therefore the procedure is the same for both institutions. - - Who? - Access is available for faculty students (under faculty - supervision), and researchers of the KU Leuven, UHasselt and their - associations. - - How? - Researchers with a regular personnel account (u-number) can use - the :ref:`generic procedure `. - - If you are in one of the higher education institutions associated - with KU Leuven, the :ref:`generic procedure ` - may not work. In that case, please e-mail hpcinfo@kuleuven.be - to get an account. You will have to provide a public ssh key generated - as described above. - - Lecturers of KU Leuven and UHasselt that need HPC access for giving - their courses: The procedure requires action both from the lecturers - and from the students. Lecturers should follow the :ref:`specific - procedure for lecturers `, - while the students should simply apply for the account through the - :ref:`generic procedure `. - -.. tabbed:: UGent - - All information about the access policy is available `in - English `_ at the `UGent - HPC web pages `_. - - Who? - Access is available for faculty students (master's projects under - faculty supervision), and researchers of UGent. - - How? - Researchers and students can use the :ref:`generic procedure `. - -.. tabbed:: UAntwerp (AUHA) - - Who? - Access is available for faculty students (master's projects under - faculty supervision), and researchers of the AUHA. - - How? - Researchers can use the :ref:`generic procedure `. - - Master students can also use the infrastructure for their master - thesis work. The promotor of the thesis should first send a - motivation to hpc@uantwerpen.be and then the :ref:`generic - procedure ` should be followed (using your - student UAntwerpen id) to request the account. - -.. tabbed:: VUB - - All information about the access policy is available on the `VUB - HPC documentation website `_. - - Who? - Access is available for faculty students (under faculty - supervision), and researchers of VUB and their associations. - - How? - Researchers with a regular VUB account (`@vub.be`) can use - the :ref:`generic procedure `. - - Master students can also use the infrastructure for their master - thesis work. The promotor of the thesis should first send a - motivation to hpc@vub.be and then the :ref:`generic - procedure ` should be followed to request the account. - -.. tabbed:: Others - - Who? - Check that `you are eligible to use VSC infrastructure `_. - - How? - Ask your VSC contact for help. If you don't have a VSC contact yet, and please - `get in touch`_ with us. +.. tab-set:: + + .. tab-item:: KU Leuven/UHasselt + + UHasselt has an agreement with KU Leuven to run a shared infrastructure. + Therefore the procedure is the same for both institutions. + + Who? + Access is available for faculty students (under faculty + supervision), and researchers of the KU Leuven, UHasselt and their + associations. + + How? + Researchers with a regular personnel account (u-number) can use + the :ref:`generic procedure `. + - If you are in one of the higher education institutions associated + with KU Leuven, the :ref:`generic procedure ` + may not work. In that case, please e-mail hpcinfo@kuleuven.be + to get an account. You will have to provide a public ssh key generated + as described above. + - Lecturers of KU Leuven and UHasselt that need HPC access for giving + their courses: The procedure requires action both from the lecturers + and from the students. Lecturers should follow the :ref:`specific + procedure for lecturers `, + while the students should simply apply for the account through the + :ref:`generic procedure `. + + .. tab-item:: UGent + + All information about the access policy is available `in + English `_ at the `UGent + HPC web pages `_. + + Who? + Access is available for faculty students (master's projects under + faculty supervision), and researchers of UGent. + + How? + Researchers and students can use the :ref:`generic procedure `. + + .. tab-item:: UAntwerp (AUHA) + + Who? + Access is available for faculty students (master's projects under + faculty supervision), and researchers of the AUHA. + + How? + Researchers can use the :ref:`generic procedure `. + - Master students can also use the infrastructure for their master + thesis work. The promotor of the thesis should first send a + motivation to hpc@uantwerpen.be and then the :ref:`generic + procedure ` should be followed (using your + student UAntwerpen id) to request the account. + + .. tab-item:: VUB + + All information about the access policy is available on the `VUB + HPC documentation website `_. + + Who? + Access is available for faculty students (under faculty + supervision), and researchers of VUB and their associations. + + How? + Researchers with a regular VUB account (`@vub.be`) can use + the :ref:`generic procedure `. + - Master students can also use the infrastructure for their master + thesis work. The promotor of the thesis should first send a + motivation to hpc@vub.be and then the :ref:`generic + procedure ` should be followed to request the account. + + .. tab-item:: Others + + Who? + Check that `you are eligible to use VSC infrastructure `_. + + How? + Ask your VSC contact for help. If you don't have a VSC contact yet, and please + `get in touch`_ with us. .. _generic access procedure: diff --git a/source/conf.py b/source/conf.py index af258db7..644bca2f 100644 --- a/source/conf.py +++ b/source/conf.py @@ -42,7 +42,7 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ - 'sphinx_panels', + 'sphinx_design', 'sphinx.ext.todo', 'sphinx.ext.coverage', 'sphinx.ext.ifconfig', @@ -113,10 +113,6 @@ # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] -# Bootstrap CSS classes from sphinx-panels -# disable to avoid conflicts with Bootstrap in pydata-sphinx-theme -panels_add_bootstrap_css = False - # Logo in top bar html_logo = "_static/vsc-logo-1.png" From c5ad92ff4ecfaa4e4a3fe35affd0252a14add883 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 01:21:20 +0100 Subject: [PATCH 015/165] use VSC colors for primary and background colors --- source/_static/css/vsc.css | 11 +++++++++++ source/conf.py | 3 +++ 2 files changed, 14 insertions(+) create mode 100644 source/_static/css/vsc.css diff --git a/source/_static/css/vsc.css b/source/_static/css/vsc.css new file mode 100644 index 00000000..02842561 --- /dev/null +++ b/source/_static/css/vsc.css @@ -0,0 +1,11 @@ +html[data-theme="light"] { + --pst-color-primary: #d96c31; + --pst-color-background: #f1f2f2; + --pst-color-link: #f28e24; +} + +html[data-theme="dark"] { + --pst-color-primary: #f28e24; + --pst-color-background: #383839; + --pst-color-link: #e8a023; +} diff --git a/source/conf.py b/source/conf.py index 644bca2f..a776988b 100644 --- a/source/conf.py +++ b/source/conf.py @@ -106,12 +106,15 @@ "icon": "fa-brands fa-square-twitter", }, ], + "pygment_light_style": "solarized-light", + "pygment_dark_style": "nord", } # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] +html_css_files = ['css/vsc.css'] # Logo in top bar html_logo = "_static/vsc-logo-1.png" From 521b8cbee985f24cbf21cedfccc0556101521a81 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Thu, 10 Nov 2022 02:42:08 +0100 Subject: [PATCH 016/165] reorganize docs in top sections: access, compute, cloud and data --- source/access/access_and_data_transfer.rst | 6 ++--- source/access/generating_keys.rst | 10 ++++---- source/access/generating_keys_on_windows.rst | 5 ++-- .../access/generating_keys_with_openssh.rst | 6 ++--- .../generating_keys_with_openssh_on_os_x.rst | 6 ++--- source/access/getting_access.rst | 13 +++++----- source/access/index.rst | 21 ++++++++-------- source/cloud.rst | 10 ++++++++ source/compute.rst | 12 +++++++++ source/data.rst | 10 ++++++++ source/faq.rst | 6 ++--- source/hardware-tier1.rst | 12 +++++++++ source/hardware-tier2.rst | 14 +++++++++++ source/hardware.rst | 25 +++---------------- source/index.rst | 10 +++++--- source/jobs/index.rst | 6 ++--- source/jobs/running_jobs.rst | 2 +- 17 files changed, 110 insertions(+), 64 deletions(-) create mode 100644 source/cloud.rst create mode 100644 source/compute.rst create mode 100644 source/data.rst create mode 100644 source/hardware-tier1.rst create mode 100644 source/hardware-tier2.rst diff --git a/source/access/access_and_data_transfer.rst b/source/access/access_and_data_transfer.rst index c7533243..6be5cf43 100644 --- a/source/access/access_and_data_transfer.rst +++ b/source/access/access_and_data_transfer.rst @@ -1,8 +1,8 @@ .. _acccess_data_transfer: -######################## -Access and Data Transfer -######################## +################################################ +:fas:`right-to-bracket` Access and Data Transfer +################################################ Before you can really start using one of the clusters, there are several things you need to do or know: diff --git a/source/access/generating_keys.rst b/source/access/generating_keys.rst index 48602221..54e90acf 100644 --- a/source/access/generating_keys.rst +++ b/source/access/generating_keys.rst @@ -1,6 +1,6 @@ -############# -Security Keys -############# +######################## +:fas:`key` Security Keys +######################## Unlike your institute account, VSC accounts don't use regular fixed passwords but a key pair consisting of a public an private key because @@ -44,6 +44,6 @@ describe the generation of key pairs in the client sections below: :maxdepth: 2 generating_keys_on_windows - generating_keys_on_linux - generating_keys_on_os_x + generating_keys_with_openssh + generating_keys_with_openssh_on_os_x diff --git a/source/access/generating_keys_on_windows.rst b/source/access/generating_keys_on_windows.rst index 11eee86b..c3ecc3a0 100644 --- a/source/access/generating_keys_on_windows.rst +++ b/source/access/generating_keys_on_windows.rst @@ -1,7 +1,8 @@ .. _generating keys windows: -Generating keys on Windows -========================== +######################################### +:fab:`windows` Generating keys on Windows +######################################### To get access from a Windows computer, we currently provide documentation for two SSH clients, :ref:`PuTTY ` and :ref:`MobaXterm `, diff --git a/source/access/generating_keys_with_openssh.rst b/source/access/generating_keys_with_openssh.rst index cc0fbfc4..793fac4f 100644 --- a/source/access/generating_keys_with_openssh.rst +++ b/source/access/generating_keys_with_openssh.rst @@ -1,8 +1,8 @@ .. _generating keys linux: -######################## -Generating keys on Linux -######################## +##################################### +:fab:`linux` Generating keys on Linux +##################################### Requirements: diff --git a/source/access/generating_keys_with_openssh_on_os_x.rst b/source/access/generating_keys_with_openssh_on_os_x.rst index 22aaf2ff..e20d77ab 100644 --- a/source/access/generating_keys_with_openssh_on_os_x.rst +++ b/source/access/generating_keys_with_openssh_on_os_x.rst @@ -1,8 +1,8 @@ .. _generating keys macos: -######################## -Generating keys on macOS -######################## +##################################### +:fab:`apple` Generating keys on macOS +##################################### Requirements: diff --git a/source/access/getting_access.rst b/source/access/getting_access.rst index a72949ae..63c8ae1b 100644 --- a/source/access/getting_access.rst +++ b/source/access/getting_access.rst @@ -1,5 +1,6 @@ -Getting Access -============== +################################ +:fas:`user-check` Getting Access +################################ Once you have a valid :ref:`public/private key pair`, you can submit an account request. The following algorithm guides you to the @@ -7,8 +8,8 @@ appropriate approach for each institution. .. _apply for account: -Applying for the account -~~~~~~~~~~~~~~~~~~~~~~~~ +Applying for your VSC account +============================= .. tab-set:: @@ -104,7 +105,7 @@ procedure does not work. #. Open the `VSC account page`_. #. Select your "home" institution from the drop-down menu and click the "confirm" button. #. Log in using your institution login and password. -#. You will be asked to upload the public key you `created earlier `_. +#. You will be asked to upload the public key you `created earlier `_. #. You will get an e-mail to confirm your application, click the included link to do so. #. After the account has been approved by the VSC, your account will be created and you will get a confirmation e-mail. @@ -134,7 +135,7 @@ Information on our training program and the schedule is available on the .. note:: - :badge:`KU Leuven,badge-primary` if there is no course announced, users of + :bdg-primary:`KU Leuven` if there is no course announced, users of KU Leuven can register to the `training waiting list`_ and we will organize a new session as soon as we get a few people interested in it. diff --git a/source/access/index.rst b/source/access/index.rst index 734ec013..174504c5 100644 --- a/source/access/index.rst +++ b/source/access/index.rst @@ -1,11 +1,11 @@ .. _access: -############################## -:fa:`user-circle` VSC Accounts -############################## +######################### +:fas:`user-circle` Access +######################### In order to use the infrastructure of the VSC, you need a VSC-user ID, -also called a VSC account. Check the `VSC website `_ +also called a VSC account. Check the `VSC website `_ for conditions. All VSC-accounts start with the letters ``vsc`` followed by a @@ -18,11 +18,11 @@ Your VSC account gives you access to most of the VSC Tier-2 infrastructure, though for some more specialized hardware you may have to ask access separately. The rationale is that we want to ensure that that specialized (usually rather expensive) hardware is used efficiently for the type of applications it was -purchased for. Contact your `local VSC coordinator `_ to arrange +purchased for. Contact your `local VSC coordinator `_ to arrange access when required. For the main Tier-1 compute cluster you need to submit a -`project application `_ (or you should be +`project application `_ (or you should be covered by a project application within your research group). Before you apply for VSC account, it is useful to first check whether @@ -35,12 +35,13 @@ laptop is sufficient. The pages on the :ref:`tier1 hardware` and in this part of the website give a high-level description of our infrastructure. You can find more detailed information in the user documentation on the user portal. When in doubt, you can also contact -your `local support team `_. This does not require a VSC account. +your `local support team `_. This does not require a VSC account. -Access -====== +VSC Account Application +======================= -New users of the VSC clusters should take the following three steps to get access: +New users of the VSC clusters should take the following three steps to get +their VSC account and access the VSC infrastructure: .. toctree:: :maxdepth: 2 diff --git a/source/cloud.rst b/source/cloud.rst new file mode 100644 index 00000000..772e637c --- /dev/null +++ b/source/cloud.rst @@ -0,0 +1,10 @@ +.. _cloud: + +################## +:fas:`cloud` Cloud +################## + + +.. toctree:: + :maxdepth: 2 + diff --git a/source/compute.rst b/source/compute.rst new file mode 100644 index 00000000..5b658c5a --- /dev/null +++ b/source/compute.rst @@ -0,0 +1,12 @@ +.. _compute: + +##################### +:fas:`rocket` Compute +##################### + + +.. toctree:: + :maxdepth: 3 + + hardware + jobs/index diff --git a/source/data.rst b/source/data.rst new file mode 100644 index 00000000..634cd2bc --- /dev/null +++ b/source/data.rst @@ -0,0 +1,10 @@ +.. _data: + +#################### +:fas:`database` Data +#################### + + +.. toctree:: + :maxdepth: 2 + diff --git a/source/faq.rst b/source/faq.rst index 6c4b3814..e04154f2 100644 --- a/source/faq.rst +++ b/source/faq.rst @@ -1,8 +1,8 @@ .. _faqs: -########################## -:fa:`question-circle` FAQs -########################## +########################### +:fas:`question-circle` FAQs +########################### .. _general faqs: diff --git a/source/hardware-tier1.rst b/source/hardware-tier1.rst new file mode 100644 index 00000000..3d343b83 --- /dev/null +++ b/source/hardware-tier1.rst @@ -0,0 +1,12 @@ +.. _tier1 hardware: + +################################ +:fas:`t`:fas:`1` Tier-1 hardware +################################ + + +.. toctree:: + :maxdepth: 3 + + leuven/tier1_hardware/breniac_hardware + gent/tier1_hortense diff --git a/source/hardware-tier2.rst b/source/hardware-tier2.rst new file mode 100644 index 00000000..5d938677 --- /dev/null +++ b/source/hardware-tier2.rst @@ -0,0 +1,14 @@ +.. _tier2 hardware: + +################################ +:fas:`t`:fas:`2` Tier-2 hardware +################################ + +.. toctree:: + :maxdepth: 3 + + antwerp/tier2_hardware + brussels/tier2_hardware + gent/tier2_hardware + leuven/tier2_hardware + diff --git a/source/hardware.rst b/source/hardware.rst index 7be1b05b..f36dd6ed 100644 --- a/source/hardware.rst +++ b/source/hardware.rst @@ -4,26 +4,9 @@ :fa:`server` VSC hardware ######################### -.. _tier2 hardware: - -Tier-2 hardware ---------------- - -.. toctree:: - :maxdepth: 2 - - antwerp/tier2_hardware - brussels/tier2_hardware - gent/tier2_hardware - leuven/tier2_hardware - -.. _tier1 hardware: - -Tier-1 hardware ---------------- - .. toctree:: - :maxdepth: 2 + :maxdepth: 3 + :numbered: 3 - leuven/tier1_hardware/breniac_hardware - gent/tier1_hortense + hardware-tier1 + hardware-tier2 diff --git a/source/index.rst b/source/index.rst index 9bd61ff6..d764f309 100644 --- a/source/index.rst +++ b/source/index.rst @@ -3,15 +3,17 @@ You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. +############################ Welcome to VSC documentation -============================ +############################ .. toctree:: - :maxdepth: 2 + :maxdepth: 3 - hardware access/index - jobs/index + compute + cloud + data faq .. globus/globus_main_index diff --git a/source/jobs/index.rst b/source/jobs/index.rst index 4dc7e9ef..dc9a24a9 100644 --- a/source/jobs/index.rst +++ b/source/jobs/index.rst @@ -1,6 +1,6 @@ -################# -:fa:`rocket` Jobs -################# +################ +:fas:`gear` Jobs +################ An HPC cluster is a multi-user system. This implies that your computations run on a part of the cluster that will be temporarily reserved for you by diff --git a/source/jobs/running_jobs.rst b/source/jobs/running_jobs.rst index 5b37b216..dee50f91 100644 --- a/source/jobs/running_jobs.rst +++ b/source/jobs/running_jobs.rst @@ -92,7 +92,7 @@ More information is available on: Job names, output files and notifications Credit system -.. sealso:: +.. seealso:: Using the :ref:`module system ` From 766c66cefc8c153c1867c82402e3928dd39047a4 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 9 Dec 2022 00:05:51 +0100 Subject: [PATCH 017/165] uses non-orange colors for the links --- source/_static/css/vsc.css | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_static/css/vsc.css b/source/_static/css/vsc.css index 02842561..8d74b0fe 100644 --- a/source/_static/css/vsc.css +++ b/source/_static/css/vsc.css @@ -1,11 +1,11 @@ html[data-theme="light"] { --pst-color-primary: #d96c31; --pst-color-background: #f1f2f2; - --pst-color-link: #f28e24; + --pst-color-link: #0b6585; } html[data-theme="dark"] { --pst-color-primary: #f28e24; --pst-color-background: #383839; - --pst-color-link: #e8a023; + --pst-color-link: #dbb99c; } From f98a41c518055552df66f7c365fecaa22696ae19 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 9 Dec 2022 02:28:50 +0100 Subject: [PATCH 018/165] design the landing page with a grid of cards --- source/conf.py | 8 +++--- source/index.rst | 69 +++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 67 insertions(+), 10 deletions(-) diff --git a/source/conf.py b/source/conf.py index a776988b..39518a63 100644 --- a/source/conf.py +++ b/source/conf.py @@ -74,7 +74,7 @@ exclude_patterns = [] # The name of the Pygments (syntax highlighting) style to use. -pygments_style = None +# pygments_style = None # -- Options for HTML output ------------------------------------------------- @@ -128,15 +128,15 @@ # 'searchbox.html']``. # html_sidebars = { - "index": ["search-field"], - "**": ["search-field", "sidebar-nav-bs",], + "index": [], + "**": ["search-field", "sidebar-nav-bs"], } # Edit this page button html_context = { "github_user": "hpcleuven", "github_repo": "VscDocumentation", - "github_version": "master", + "github_version": "pydata", "doc_path": "source", } diff --git a/source/index.rst b/source/index.rst index d764f309..76cb06af 100644 --- a/source/index.rst +++ b/source/index.rst @@ -1,20 +1,77 @@ +:html_theme.sidebar_secondary.remove: + .. VSC documentation documentation master file, created by sphinx-quickstart on Fri Jan 11 14:38:46 2019. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. -############################ -Welcome to VSC documentation -############################ +################################ +Welcome to the VSC documentation +################################ + +The VSC documentation offers extensive *how-to* guides and technical +information about the services provided by the `Vlaams Supercomputer Centrum +`_. .. toctree:: - :maxdepth: 3 + :hidden: access/index compute cloud data faq -.. globus/globus_main_index -Feel free to contact :ref:`user support `. +.. grid:: 3 + :gutter: 4 + + .. grid-item-card:: :fas:`user-circle` Access + :columns: 12 + :link: access/index + :link-type: doc + :class-card: border-info + :class-title: h3 text-info + + How to get your VSC account and access the different VSC services and platforms. + + .. grid-item-card:: :fas:`rocket` Compute + :columns: 12 4 4 4 + :link: compute + :link-type: doc + :class-card: border-info + :class-title: h3 text-info + + The high-performance computing (HPC) platform provides multiple tiers + of parallel processing enabling researchers to run advanced application + programs efficiently, reliably and quickly. + + .. grid-item-card:: :fas:`cloud` Cloud + :columns: 12 4 4 4 + :link: cloud + :link-type: doc + :class-card: border-info + :class-title: h3 text-info + + The VSC Cloud component provides *on-demand* resources in a more + flexible and cloud-like manner. + + .. grid-item-card:: :fas:`database` Data + :columns: 12 4 4 4 + :link: data + :link-type: doc + :class-card: border-info + :class-title: h3 text-info + + The VSC Data component enables research data to remain close to the + computing infrastructure during the active phase of the data life + cycle. + + .. grid-item-card:: :fas:`question-circle` FAQs + :columns: 12 + :link: faq + :link-type: doc + :class-card: border-info + :class-title: h3 text-info + + Collection of frequently asked questions. + From 8df389567f18378c400e03943701f302520e1942 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 9 Dec 2022 02:32:51 +0100 Subject: [PATCH 019/165] rename hardware to infrastructure --- source/antwerp/tier2_hardware.rst | 4 ++-- source/brussels/tier2_hardware.rst | 4 ++-- source/gent/tier2_hardware.rst | 4 ++-- source/hardware-tier1.rst | 6 +++--- source/hardware-tier2.rst | 6 +++--- source/hardware.rst | 6 +++--- source/leuven/tier1_hardware/breniac_hardware.rst | 4 ++-- source/leuven/tier2_hardware.rst | 4 ++-- 8 files changed, 19 insertions(+), 19 deletions(-) diff --git a/source/antwerp/tier2_hardware.rst b/source/antwerp/tier2_hardware.rst index 8bcbbc01..5b3ab908 100644 --- a/source/antwerp/tier2_hardware.rst +++ b/source/antwerp/tier2_hardware.rst @@ -1,5 +1,5 @@ -UAntwerp Tier-2 hardware -========================== +UAntwerp Tier-2 Infrastructure +============================== .. toctree:: :maxdepth: 2 diff --git a/source/brussels/tier2_hardware.rst b/source/brussels/tier2_hardware.rst index 58b42de9..24f63716 100644 --- a/source/brussels/tier2_hardware.rst +++ b/source/brussels/tier2_hardware.rst @@ -1,5 +1,5 @@ -VUB Tier-2 hardware -================================== +VUB Tier-2 Infrastructure +========================= .. toctree:: :maxdepth: 2 diff --git a/source/gent/tier2_hardware.rst b/source/gent/tier2_hardware.rst index e45253b0..1928a796 100644 --- a/source/gent/tier2_hardware.rst +++ b/source/gent/tier2_hardware.rst @@ -1,5 +1,5 @@ -HPC-UGent Tier-2 hardware -========================= +HPC-UGent Tier-2 Infrastructure +=============================== The Stevin computing infrastructure consists of several Tier2 clusters which are hosted in the S10 datacenter of Ghent University. This infrastructure is co-financed by FWO and Department of Economy, Science and Innovation (EWI). diff --git a/source/hardware-tier1.rst b/source/hardware-tier1.rst index 3d343b83..452f012b 100644 --- a/source/hardware-tier1.rst +++ b/source/hardware-tier1.rst @@ -1,8 +1,8 @@ .. _tier1 hardware: -################################ -:fas:`t`:fas:`1` Tier-1 hardware -################################ +##################### +Tier-1 Infrastructure +##################### .. toctree:: diff --git a/source/hardware-tier2.rst b/source/hardware-tier2.rst index 5d938677..83d6af40 100644 --- a/source/hardware-tier2.rst +++ b/source/hardware-tier2.rst @@ -1,8 +1,8 @@ .. _tier2 hardware: -################################ -:fas:`t`:fas:`2` Tier-2 hardware -################################ +##################### +Tier-2 Infrastructure +##################### .. toctree:: :maxdepth: 3 diff --git a/source/hardware.rst b/source/hardware.rst index f36dd6ed..824f1735 100644 --- a/source/hardware.rst +++ b/source/hardware.rst @@ -1,8 +1,8 @@ .. _hardware: -######################### -:fa:`server` VSC hardware -######################### +########################### +:fa:`server` Infrastructure +########################### .. toctree:: :maxdepth: 3 diff --git a/source/leuven/tier1_hardware/breniac_hardware.rst b/source/leuven/tier1_hardware/breniac_hardware.rst index be597e68..925c0980 100644 --- a/source/leuven/tier1_hardware/breniac_hardware.rst +++ b/source/leuven/tier1_hardware/breniac_hardware.rst @@ -1,5 +1,5 @@ -Breniac hardware -================ +Breniac infrastructure +====================== Breniac is the VSC's Tier-1 cluster hosted by KU Leuven. diff --git a/source/leuven/tier2_hardware.rst b/source/leuven/tier2_hardware.rst index 56eb32c1..eb6b7ad9 100644 --- a/source/leuven/tier2_hardware.rst +++ b/source/leuven/tier2_hardware.rst @@ -1,5 +1,5 @@ -KU Leuven/UHasselt Tier-2 hardware -================================== +KU Leuven/UHasselt Tier-2 Infrastructure +======================================== .. toctree:: :maxdepth: 2 From 9a08e719808a2101722d481e7107dea443bd2e4a Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 9 Dec 2022 02:42:50 +0100 Subject: [PATCH 020/165] use grid of cards in index of Compute --- source/compute.rst | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/source/compute.rst b/source/compute.rst index 5b658c5a..ffcf9ce2 100644 --- a/source/compute.rst +++ b/source/compute.rst @@ -4,9 +4,21 @@ :fas:`rocket` Compute ##################### +.. grid:: 2 + :gutter: 4 -.. toctree:: - :maxdepth: 3 + .. grid-item-card:: + :columns: 12 6 6 6 - hardware - jobs/index + .. toctree:: + :maxdepth: 3 + + hardware + + .. grid-item-card:: + :columns: 12 6 6 6 + + .. toctree:: + :maxdepth: 3 + + jobs/index From 2c8d2dacdbef77e464a537cd654b74df0fac6059 Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 9 Dec 2022 02:45:45 +0100 Subject: [PATCH 021/165] render toctree level 1 elements in bold --- source/_static/css/vsc.css | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/source/_static/css/vsc.css b/source/_static/css/vsc.css index 8d74b0fe..030892bd 100644 --- a/source/_static/css/vsc.css +++ b/source/_static/css/vsc.css @@ -9,3 +9,10 @@ html[data-theme="dark"] { --pst-color-background: #383839; --pst-color-link: #dbb99c; } + +.toctree-l1 { + font-weight: bold; +} +.toctree-l2 { + font-weight: normal; +} From d14b50fa091f728d3e5a71ee5ac2ea77fc2f74bd Mon Sep 17 00:00:00 2001 From: Alex Domingo Date: Fri, 9 Dec 2022 11:05:44 +0100 Subject: [PATCH 022/165] merge Slurm documentation from UAntwerp into main Compute section --- source/antwerp/SLURM_UAntwerp.rst | 946 ------------------ source/antwerp/SLURM_advanced_UAntwerp.rst | 4 +- .../tier2_hardware/hopper_hardware.rst | 2 +- .../tier2_hardware/leibniz_hardware.rst | 2 +- .../tier2_hardware/vaughan_hardware.rst | 2 +- .../antwerp/uantwerp_software_specifics.rst | 2 +- source/jobs/index.rst | 22 +- source/jobs/job_management.rst | 120 +++ source/jobs/job_submission.rst | 295 ++++++ source/jobs/job_types.rst | 463 +++++++++ source/jobs/running_jobs.rst | 282 ++---- source/jobs/running_jobs_pbs.rst | 212 ++++ 12 files changed, 1181 insertions(+), 1171 deletions(-) delete mode 100644 source/antwerp/SLURM_UAntwerp.rst create mode 100644 source/jobs/job_management.rst create mode 100644 source/jobs/job_submission.rst create mode 100644 source/jobs/job_types.rst create mode 100644 source/jobs/running_jobs_pbs.rst diff --git a/source/antwerp/SLURM_UAntwerp.rst b/source/antwerp/SLURM_UAntwerp.rst deleted file mode 100644 index b59aa65e..00000000 --- a/source/antwerp/SLURM_UAntwerp.rst +++ /dev/null @@ -1,946 +0,0 @@ -.. _Antwerp Slurm: - -Slurm @ UAntwerp -================ - -This page covers the more basic Slurm use, including starting jobs, basic job management -and some templates for job scripts for various scenarios. It is the minimum a user should -master. A second page describes :ref:`more advanced use of Slurm `. - -What and why? -------------- - -Since the start of the VSC, Torque and Moab were used as the resource manager and scheduler -respectively. The resource manager is responsible for keeping track of resources and making -sure jobs use the resources allocated to them. The scheduler is the piece of software that -prioritises jobs that are waiting in the queue and decides which job can start with which -resources. It is clear that both have to work together very closely. Torque and Moab were -developed and supported by Adaptive Computing. This company was acquired by ALA Services -Technology Companies. Since then the software isn't well supported anymore, resulting in -problems to keep it running on our systems. - -Therefore, the decision was taken to transfer to a different resource manager and scheduler -software. Slurm Workload Manager was chosen due to its wide use in academic supercomputer -centres. We've been preparing for this switch for over two years now by stressing in the -introductory courses those features of Torque and Moab that resemble Slurm features -the most. - -Slurm Workload Manager is also used on the clusters at UGent (but with a wrapper that still -accepts Torque job scripts with some limitations) and will also be the scheduler on Hortense, the -successor of the BrENIAC Tier-1 system. - -Historically, Slurm was an acronym of **S**\imple **L**\inux **U**\tility for -**R**\esource **M**\anagement. The development started around 2002 at Lawrence Livermore -National Lab as a resource manager for Linux clusters. Slurm has always had a very modular -architecture. From 2008 on increasingly sophisticated scheduling plugins were added -to Slurm. Nowadays it is used on some of the largest systems in the world. Slurm is -completely open source though commercial support can be obtained from SchedMD, a -spin-off company of the Slurm development. - - -Slurm concepts --------------- - -* **Nodes**: On the UAntwerp clusters (and most other clusters) a node is the largest - part of the cluster running a single operating system image, and hence capable of - supporting a shared memory program. Nodes are connected with each other through an - interconnect, and communication between nodes is done via message passing. -* **Core**: A core is a physical core in a system. -* **CPU**: A CPU is a virtual core in a system, in other words, a hardware thread - in a system with hyperthreading/SMT enabled. On a system with hyperthreading/SMT - disabled, virtual cores are just physical cores. -* **Partition**: Groups of nodes with limits and access controls, basically the equivalent - of a queue in Torque. A node can be part of multiple partitions. -* **Job**: A resource allocation request. -* **Job step**: A set of (possibly parallel) tasks within a job. A job can consist of - just a single job step or can contain multiple job steps which may use all or just - a part of the resource allocation of a job and can run sequentially or in parallel - (or a mix of that). The job script itself is a special job step, called the batch - job step, but additional job - steps can be created (e.g., for running a parallel MPI application). -* **Task**: A task is executed within a job step and essentially corresponds to a - Linux process: a single- or multithreaded process, or a single rank within a MPI - process. Specifying the number of tasks one wants to run simultaneously and the - number of cores per task is a very convenient way to request resources to Slurm - as afterwards starting a MPI or hybrid MPI/OpenMP program using the ``srun`` - command is very easy. - - -Slurm commands --------------- - - -Submitting a job script: sbatch -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -`Slurm sbatch manual page on the web `_ - -The ``sbatch`` is the command in Slurm to submit a job script. -A job script first contains a list of resources and other instructions to -Slurm, and this is followed by a set of commands that will be executed on the -first node of the job. When the submission succeeds, ``sbatch`` will print a -message containing the unique job ID for the job. - -Resource specifications and other instructions can be specified in three -different ways: command line options, environment variables, and ``#SBATCH`` -lines in the job script. - -* Slurm ``sbatch`` has a lot of command line options. We will only list the - most important command line options below. Command line options of Slurm - take precedence over environment variables and ``#SBATCH`` lines in the - job script. -* Some command line options can also be passed to ``sbatch`` through environment - variables instead. A list of those can be found in the - `sbatch manual page `_. The name of those - variables starts with ``SBATCH_`` and the remaining part is derived from the - matching command line option. However, be careful when using those and hiding them - in ``.bashrc`` or ``.bash_profile`` as they are easily forgotten yet have a higher - priority than those on ``SBATCH`` lines which is the most used mechanism to specify - resources etc. -* All command line options can also be passed in ``#SBATCH`` lines in the job script. - These lines should follow immediately below the shebang in the first block of - comment lines (lines that start with ``#``) as otherwise they will - be ignored by Slurm. - -Note that all ``sbatch`` command line options should be specified -*before* the name of the job script. All command line parameters specified -*after* the name of the job script will be passed as command line arguments -to the job script when it executes. - -Requesting compute resources -"""""""""""""""""""""""""""" - -Slurm supports several ways to request CPU cores and/or GPUs for a job. - -The easiest way to request CPU cores is by following the "task"-idea -of Slurm and specifying the number of parallel tasks and cores per task -that you need. By specifying resources this way, it is very easy afterwards -to start OpenMP, MPI and hybrid MPI/OpenMP programs in the right configuration. - -* The number of tasks is specified by ``--ntasks=`` or - ``-n ``. The ``=``-sign in the long option format can - be replaced by a space, and in the short form (``-n``) the space between - the flag and the value form can also be omitted (in effect, this holds - for all options). -* The number of CPUs (hardware threads) per task is specified by - ``--cpus-per-task=`` or ``-c ``. On the UAntwerp clusters, - CPUs are physical cores (since hyperthreading is disabled). For each task, - all of the CPUs for that task are allocated on a single node. When using - multiple nodes, the allocated CPUs for all tasks are distributed equally - over all the nodes (except possibly for the last node). - -Make sure to request a valid combination of tasks and/or CPUs per task. -Otherwise, your job can be rejected or it could end up in the partition -queue but it will never start (in that case, check the reason code, as -explained later in this document in the section on checking the queue). - -If set, the Slurm controller will set the corresponding variables, -respectively ``SLURM_NTASKS`` and ``SLURM_CPUS_PER_TASK`` in the -environment of the running job. - -If not set, the default values of 1 task and 1 CPU are used. - -Requesting memory -""""""""""""""""" - -Slurm jobs can also request an amount of RAM space (resident memory). -In case of the UAntwerp clusters, swapping for jobs is -disabled since the nodes don't have drives suitable for the load caused by -swapping and since swapping is extremely detrimental to the performance of -the cluster. Therefore, swap space cannot be requested. - -Slurm has various ways to request memory. Unfortunately, there is currently no -way to request memory per task. The preferred method for requesting memory in -Slurm on the UAntwerp clusters is to specify the amount of memory per CPU -(per core on the UAntwerp clusters): -``--mem-per-cpu=`` (e.g., ``--mem-per-cpu=1g``). The amount is an -integer, ```` can be either ``k`` for kilobytes, ``m`` for megabyte or -``g`` for gigabyte. - -The job will be rejected if the final amount of memory requested cannot be satisfied. -This could happen if ``--mem-per-cpu`` times the number of CPUs on a node is greater -than the memory on that node that is available for job allocations. Note that on the -UAntwerp clusters, the memory available for job allocations is somewhat less than the -total memory installed on a node (to keep some amount of memory for the OS and file -system buffers). - -If not set, a default value will be used, equal to the total memory available for job -allocations of that node divided by the number of CPUs. - -The amount of available memory per CPU is available via the variable -``SLURM_MEM_PER_CPU`` as an integer with megabytes as unit in the -environment of the running job. - -Requesting wall time -"""""""""""""""""""" - -The requested compute time is specified using ``--time=