<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.umiacs.umd.edu/umiacs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mbaney</id>
	<title>UMIACS - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.umiacs.umd.edu/umiacs/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mbaney"/>
	<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php/Special:Contributions/Mbaney"/>
	<updated>2026-08-01T21:53:28Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13319</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13319"/>
		<updated>2026-07-24T16:51:46Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on Monday 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than 5pm on Friday 08/21/2026.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames, if not already upgraded, will be scheduled for upgrade individually in the near future. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when ready. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on the &#039;00&#039; submission node in a pairing that you want to keep, please ensure you copy it to the &#039;01&#039; submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to the &#039;00&#039; node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
&#039;&#039;&#039;All compute nodes have been upgraded as of 07/24/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please transition your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only. If you need to do more involved testing, please schedule a job for this.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 is populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13318</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13318"/>
		<updated>2026-07-24T16:36:53Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on Monday 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than 5pm on Friday 08/21/2026.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames, if not already upgraded, will be scheduled for upgrade individually in the near future. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when ready. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on the &#039;00&#039; submission node in a pairing that you want to keep, please ensure you copy it to the &#039;01&#039; submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to the &#039;00&#039; node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
&#039;&#039;&#039;All compute nodes have been upgraded as of 07/24/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please transition your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 is populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13317</id>
		<title>MonthlyMaintenanceWindow</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13317"/>
		<updated>2026-07-24T16:25:40Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[HelpDesk | UMIACS staff]] takes a monthly maintenance window to patch and reboot all UMIACS-supported hosts and services.  This provides a way for staff to ensure security updates are installed and applied on the numerous different platforms and appliances that UMIACS runs.&lt;br /&gt;
&lt;br /&gt;
The window for each month is calculated by adding 9 days to [https://en.wikipedia.org/wiki/Patch_Tuesday Microsoft&#039;s Patch Tuesday] to allow for enough time to marshal patches released that month from Microsoft, Red Hat, Apple, and other OS and application vendors and have enough time to get systems prepared to reboot.  This translates to the window being on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month.  The window lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
[[Nexus]] will always have a reservation in place from 4:45pm-8pm on the day of the upcoming window to prevent jobs from being scheduled on compute nodes. The 15-minute addition before the start of the window is to allow jobs to fully end. Any job submitted before the reservation begins that has a time limit that would run into the reservation will be held until at least the end of the reservation - 8pm on the day of the window. This is to prevent issues with jobs failing to end properly causing delays in work we have scheduled during the window.&lt;br /&gt;
&lt;br /&gt;
A list of upcoming maintenance windows is as follows, with the next one in bold. Again, the window is on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month, and lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;August 20th 2026&#039;&#039;&#039;&lt;br /&gt;
* September 17th 2026&lt;br /&gt;
* October 22nd 2026&lt;br /&gt;
* November 19th 2026&lt;br /&gt;
* December 17th 2026&lt;br /&gt;
&lt;br /&gt;
==Archives==&lt;br /&gt;
* January 17th 2013 - BEGIN time of 8pm-12am for this window through February 20th 2020&lt;br /&gt;
* February 21st 2013&lt;br /&gt;
* March 21st 2013&lt;br /&gt;
* April 18th 2013&lt;br /&gt;
* May 23rd 2013&lt;br /&gt;
* June 20th 2013&lt;br /&gt;
* July 18th 2013&lt;br /&gt;
* August 22nd 2013&lt;br /&gt;
* September 19th 2013&lt;br /&gt;
* October 17th 2013&lt;br /&gt;
* December 19th 2013&lt;br /&gt;
* January 23rd 2014&lt;br /&gt;
* February 20th 2014&lt;br /&gt;
* March 20th 2014&lt;br /&gt;
* April 17th 2014&lt;br /&gt;
* May 22nd 2014&lt;br /&gt;
* June 19th 2014&lt;br /&gt;
* July 17th 2014&lt;br /&gt;
* August 21st 2014&lt;br /&gt;
* September 18th 2014&lt;br /&gt;
* October 23rd 2014&lt;br /&gt;
* November 20th 2014&lt;br /&gt;
* December 18th 2014&lt;br /&gt;
* January 22nd 2015&lt;br /&gt;
* February 19th 2015&lt;br /&gt;
* March 19th 2015&lt;br /&gt;
* May 21st 2015&lt;br /&gt;
* June 18th 2015&lt;br /&gt;
* July 23rd 2015&lt;br /&gt;
* August 20th 2015&lt;br /&gt;
* September 17th 2015&lt;br /&gt;
* October 22nd 2015&lt;br /&gt;
* November 19th 2015&lt;br /&gt;
* December 17th 2015&lt;br /&gt;
* January 21st 2016&lt;br /&gt;
* February 18th 2016&lt;br /&gt;
* March 12th 2016 (Adjusted date for AVW power outage)&lt;br /&gt;
* April 21st 2016&lt;br /&gt;
* May 19th 2016&lt;br /&gt;
* June 23rd 2016&lt;br /&gt;
* July 21st 2016&lt;br /&gt;
* August 18th 2016&lt;br /&gt;
* September 22nd 2016&lt;br /&gt;
* October 20th 2016&lt;br /&gt;
* November 17th 2016&lt;br /&gt;
* December 22nd 2016&lt;br /&gt;
* January 19th 2017&lt;br /&gt;
* February 23rd 2017&lt;br /&gt;
* March 23rd 2017&lt;br /&gt;
* April 20th 2017&lt;br /&gt;
* May 18th 2017&lt;br /&gt;
* June 22nd 2017&lt;br /&gt;
* July 20th 2017&lt;br /&gt;
* August 17th 2017&lt;br /&gt;
* September 21st 2017&lt;br /&gt;
* October 19th 2017&lt;br /&gt;
* December 21st 2017&lt;br /&gt;
* January 18th 2018&lt;br /&gt;
* February 22nd 2018&lt;br /&gt;
* March 22nd 2018&lt;br /&gt;
* April 19th 2018&lt;br /&gt;
* May 17th 2018&lt;br /&gt;
* June 21st 2018&lt;br /&gt;
* July 19th 2018&lt;br /&gt;
* August 23rd 2018&lt;br /&gt;
* September 20th 2018&lt;br /&gt;
* October 18th 2018&lt;br /&gt;
* December 20th 2018&lt;br /&gt;
* January 24th 2019&lt;br /&gt;
* February 21st 2019&lt;br /&gt;
* April 18th 2019&lt;br /&gt;
* May 23rd 2019&lt;br /&gt;
* June 20th 2019&lt;br /&gt;
* July 18th 2019&lt;br /&gt;
* August 22nd 2019&lt;br /&gt;
* September 19th 2019&lt;br /&gt;
* October 17th 2019&lt;br /&gt;
* November 21st 2019&lt;br /&gt;
* December 19th 2019&lt;br /&gt;
* January 23rd 2020&lt;br /&gt;
* February 20th 2020&lt;br /&gt;
* April 23rd 2020 - BEGIN time of 5pm-7pm for this window through August 19th 2021&lt;br /&gt;
* June 18th 2020&lt;br /&gt;
* July 23rd 2020&lt;br /&gt;
* August 20th 2020&lt;br /&gt;
* September 17th 2020&lt;br /&gt;
* October 22nd 2020&lt;br /&gt;
* November 19th 2020&lt;br /&gt;
* December 17th 2020&lt;br /&gt;
* January 21st 2021&lt;br /&gt;
* February 18th 2021&lt;br /&gt;
* March 25th 2021 (Adjusted date for extended Spring Break)&lt;br /&gt;
* April 22nd 2021&lt;br /&gt;
* May 20th 2021&lt;br /&gt;
* June 17th 2021&lt;br /&gt;
* July 22nd 2021&lt;br /&gt;
* August 19th 2021&lt;br /&gt;
* September 23rd 2021 - BEGIN time of 5pm-8pm for this window and all others below&lt;br /&gt;
* October 21st 2021&lt;br /&gt;
* November 18th 2021&lt;br /&gt;
* January 20th 2022&lt;br /&gt;
* February 17th 2022&lt;br /&gt;
* March 24th 2022 (Adjusted date for Spring Break)&lt;br /&gt;
* April 21st 2022&lt;br /&gt;
* May 19th 2022&lt;br /&gt;
* June 23rd 2022&lt;br /&gt;
* July 21st 2022&lt;br /&gt;
* August 18th 2022&lt;br /&gt;
* September 22nd 2022&lt;br /&gt;
* October 20th 2022&lt;br /&gt;
* November 17th 2022&lt;br /&gt;
* January 19th 2023&lt;br /&gt;
* February 23rd 2023&lt;br /&gt;
* April 20th 2023&lt;br /&gt;
* May 18th 2023&lt;br /&gt;
* June 22nd 2023&lt;br /&gt;
* July 20th 2023&lt;br /&gt;
* August 17th 2023&lt;br /&gt;
* September 21st 2023&lt;br /&gt;
* October 19th 2023&lt;br /&gt;
* December 20th 2023 (Adjusted date for early Winter Break)&lt;br /&gt;
* January 18th 2024&lt;br /&gt;
* February 22nd 2024&lt;br /&gt;
* March 21st 2024&lt;br /&gt;
* April 18th 2024&lt;br /&gt;
* May 23th 2024&lt;br /&gt;
* June 20th 2024&lt;br /&gt;
* July 18th 2024&lt;br /&gt;
* August 22nd 2024&lt;br /&gt;
* September 19th 2024&lt;br /&gt;
* October 17th 2024&lt;br /&gt;
* November 21st 2024&lt;br /&gt;
* December 19th 2024&lt;br /&gt;
* January 23rd 2025&lt;br /&gt;
* February 20th 2025&lt;br /&gt;
* March 20th 2025&lt;br /&gt;
* April 17th 2025&lt;br /&gt;
* May 22nd 2025&lt;br /&gt;
* June 19th 2025&lt;br /&gt;
* July 17th 2025&lt;br /&gt;
* August 21st 2025&lt;br /&gt;
* September 18th 2025&lt;br /&gt;
* October 23rd 2025&lt;br /&gt;
* November 20th 2025&lt;br /&gt;
* December 18th 2025&lt;br /&gt;
* January 22nd 2026&lt;br /&gt;
* February 19th 2026&lt;br /&gt;
* March 19th 2026&lt;br /&gt;
* April 23rd 2026&lt;br /&gt;
* May 28th 2026 (Adjusted date for CIO-imposed network change freeze)&lt;br /&gt;
* June 18th 2026&lt;br /&gt;
* July 23rd 2026&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13316</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13316"/>
		<updated>2026-07-24T15:41:19Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on Monday 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than 5pm on Friday 08/21/2026.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames, if not already upgraded, will be scheduled for upgrade individually in the near future. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when ready. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on the &#039;00&#039; submission node in a pairing that you want to keep, please ensure you copy it to the &#039;01&#039; submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to the &#039;00&#039; node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
&#039;&#039;&#039;All compute nodes have been upgraded as of 07/24/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please begin transitioning your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 has already been populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13315</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13315"/>
		<updated>2026-07-24T14:53:12Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on Monday 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than 5pm on Friday 08/21/2026.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames will be scheduled for upgrade individually in the near future. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when ready. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on the &#039;00&#039; submission node in a pairing that you want to keep, please ensure you copy it to the &#039;01&#039; submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to the &#039;00&#039; node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
&#039;&#039;&#039;All compute nodes have been upgraded as of 07/24/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please begin transitioning your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 has already been populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13314</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13314"/>
		<updated>2026-07-24T14:29:10Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on Monday 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than 5pm on Friday 08/21/2026.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames will be scheduled for upgrade individually, when all of the compute nodes associated with the same lab/center have been upgraded. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when applicable. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on the &#039;00&#039; submission node in a pairing that you want to keep, please ensure you copy it to the &#039;01&#039; submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to the &#039;00&#039; node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
&#039;&#039;&#039;All compute nodes have been upgraded as of 07/24/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please begin transitioning your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 has already been populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13313</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13313"/>
		<updated>2026-07-23T18:20:58Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on Monday 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than 5pm on Friday 08/21/2026.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames will be scheduled for upgrade individually, when all of the compute nodes associated with the same lab/center have been upgraded. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when applicable. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on the &#039;00&#039; submission node in a pairing that you want to keep, please ensure you copy it to the &#039;01&#039; submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to the &#039;00&#039; node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
Due to the large number of compute nodes and the desire to not interrupt running jobs, we are not generally able to schedule each specific compute node upgrade on a specific date. If you find that a specific node is unavailable to schedule jobs on, you can run the command &amp;lt;code&amp;gt;sinfo --list-reasons --long&amp;lt;/code&amp;gt; on a submission node and look to see if the node is in the list with the text &amp;quot;RHEL9 upgrade&amp;quot; - if this is present, the upgrade for that node is underway.&lt;br /&gt;
&lt;br /&gt;
We will generally be prioritizing upgrades for nodes based on how available they are across various partitions; nodes that are only available in partitions that contain large numbers of users for a lab/center, e.g., cbcb, clip, cml-dpart, gamma, vulcan-ampere, vulcan-dpart, etc., and corresponding &amp;quot;scavenger&amp;quot; named partitions, will be prioritized over nodes that are only or are also available in faculty-specific / limited-node partitions. All nodes in the tron partition will also generally be prioritized.&lt;br /&gt;
&lt;br /&gt;
If you are a faculty member authoritative for your own partition or a small group&#039;s limited-node partition and have scheduling concerns for the nodes in these partitions, please [[HelpDesk | contact staff]] ASAP to let us know about these concerns and we will make our best effort to accommodate them.&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please begin transitioning your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 has already been populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;br /&gt;
&lt;br /&gt;
===SLURM Scheduling===&lt;br /&gt;
If you want or need to schedule a job on only nodes running RHEL8 (or RHEL9, once you have validated whatever is relevant), you can use the submission arguments &amp;lt;code&amp;gt;--prefer=rhel#&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;--constraint=rhel#&amp;lt;/code&amp;gt; in your job arguments to specify this, where # is replaced by the OS version number. The --prefer argument is a soft limitation on which nodes the job can be scheduled on and the --constraint argument is a hard limitation, i.e., if you use the argument &amp;lt;code&amp;gt;--prefer=rhel8&amp;lt;/code&amp;gt; but there are no RHEL8 nodes available at present (with your other submission arguments also satisfied) in the partition you are submitting to, the job will be scheduled on an appropriate RHEL9 node if that would result in an earlier (or instantaneous) start time.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13311</id>
		<title>Nexus/GPUs</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13311"/>
		<updated>2026-07-17T18:01:26Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are several different types of [https://www.nvidia.com/en-us/ NVIDIA] GPUs in the [[Nexus]] cluster that are available to be scheduled. They are listed below in order of newest to oldest architecture, and then alphanumerically by name.&lt;br /&gt;
&lt;br /&gt;
The exact quantities of GPUs per type are not listed here since these numbers may change frequently due to additions to or removals from the cluster or during compute node troubleshooting. To see which compute nodes have which GPUs and in what quantities, use the &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; command on a submission or compute node. The quantities are listed under the &amp;lt;tt&amp;gt;GRES&amp;lt;/tt&amp;gt; column.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Name&lt;br /&gt;
! GRES string ([[SLURM]])&lt;br /&gt;
! [https://www.nvidia.com/en-us/technologies Architecture]&lt;br /&gt;
! [https://developer.nvidia.com/cuda-toolkit CUDA] Cores&lt;br /&gt;
! Memory Amount and Type&lt;br /&gt;
! Memory Bandwidth&lt;br /&gt;
! FP32 Performance (TFLOPS)&lt;br /&gt;
! [https://developer.nvidia.com/blog/accelerating-ai-training-with-tf32-tensor-cores/ TF32] Performance ([https://developer.nvidia.com/blog/accelerating-inference-with-sparsity-using-ampere-and-tensorrt Dense / Sparse TOPS])&lt;br /&gt;
|-&lt;br /&gt;
| RTX PRO 6000 Blackwell Max-Q Workstation Edition&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000bw-mq&amp;lt;/code&amp;gt;&lt;br /&gt;
| Blackwell&lt;br /&gt;
| 24064&lt;br /&gt;
| 96GB GDDR7&lt;br /&gt;
| 1.79 TB/s&lt;br /&gt;
| 109.7&lt;br /&gt;
| 219.5/438.9&lt;br /&gt;
|-&lt;br /&gt;
| L40S&lt;br /&gt;
| &amp;lt;code&amp;gt;l40s&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 864GB/s&lt;br /&gt;
| 91.6&lt;br /&gt;
| 183/366&lt;br /&gt;
|-&lt;br /&gt;
| RTX 6000 Ada Generation&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000ada&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 960GB/s&lt;br /&gt;
| 91.1&lt;br /&gt;
| 182.1/364.2&lt;br /&gt;
|-&lt;br /&gt;
| H100 NVLink [0]&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-nvl&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 33792&lt;br /&gt;
| 188GB HBM3&lt;br /&gt;
| 7.87TB/s&lt;br /&gt;
| 133.8&lt;br /&gt;
| not officially published/1671&lt;br /&gt;
|-&lt;br /&gt;
| H100 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 80GB HBM3&lt;br /&gt;
| 3.35TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| H200 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h200-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 141GB HBM3e&lt;br /&gt;
| 4.89TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| A100 PCIe 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 1.94TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| A100 SXM 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 2.04TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3070&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3070&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 5888&lt;br /&gt;
| 8GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 20.3&lt;br /&gt;
| 20.3/40.6&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3090&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3090&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10496&lt;br /&gt;
| 24GB GDDR6X&lt;br /&gt;
| 936GB/s&lt;br /&gt;
| 35.6&lt;br /&gt;
| 35.6/71&lt;br /&gt;
|-&lt;br /&gt;
| RTX A4000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa4000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6144&lt;br /&gt;
| 16GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 19.2&lt;br /&gt;
| not officially published/not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A5000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa5000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 8192&lt;br /&gt;
| 24GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 27.8&lt;br /&gt;
| not officially published/not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A6000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10752&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 38.7&lt;br /&gt;
| 77.4/154.8&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 2080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx2080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Turing&lt;br /&gt;
| 4352&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 616GB/s&lt;br /&gt;
| 13.4&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX 1080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;gtx1080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 484GB/s&lt;br /&gt;
| 11.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Quadro P6000&lt;br /&gt;
| &amp;lt;code&amp;gt;p6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 24GB GDDR5X&lt;br /&gt;
| 432GB/s&lt;br /&gt;
| 12.6&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Tesla P100&lt;br /&gt;
| &amp;lt;code&amp;gt;p100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 16GB CoWoS HBM2&lt;br /&gt;
| 732GB/s&lt;br /&gt;
| 9.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN X (Pascal)&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxpascal&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 480GB/s&lt;br /&gt;
| 11.0&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN Xp&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxp&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 548GB/s&lt;br /&gt;
| 12.1&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX TITAN X&lt;br /&gt;
| &amp;lt;code&amp;gt;gtxtitanx&amp;lt;/code&amp;gt;&lt;br /&gt;
| Maxwell&lt;br /&gt;
| 3072&lt;br /&gt;
| 12GB GDDR5&lt;br /&gt;
| 336GB/s&lt;br /&gt;
| 6.7&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[0] - This GPU type is actually a pair of two physical cards connected over [https://www.nvidia.com/en-us/data-center/nvlink NVLink] bridges. NVIDIA&#039;s provided specifications for this GPU type are for one physical card; to get these specs, we have hence doubled NVIDIA&#039;s provided values.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13310</id>
		<title>Nexus/GPUs</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13310"/>
		<updated>2026-07-17T17:59:31Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are several different types of [https://www.nvidia.com/en-us/ NVIDIA] GPUs in the [[Nexus]] cluster that are available to be scheduled. They are listed below in order of newest to oldest architecture, and then alphanumerically by name.&lt;br /&gt;
&lt;br /&gt;
The exact quantities of GPUs per type are not listed here since these numbers may change frequently due to additions to or removals from the cluster or during compute node troubleshooting. To see which compute nodes have which GPUs and in what quantities, use the &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; command on a submission or compute node. The quantities are listed under the &amp;lt;tt&amp;gt;GRES&amp;lt;/tt&amp;gt; column.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Name&lt;br /&gt;
! GRES string ([[SLURM]])&lt;br /&gt;
! [https://www.nvidia.com/en-us/technologies Architecture]&lt;br /&gt;
! [https://developer.nvidia.com/cuda-toolkit CUDA] Cores&lt;br /&gt;
! Memory Amount and Type&lt;br /&gt;
! Memory Bandwidth&lt;br /&gt;
! FP32 Performance (TFLOPS)&lt;br /&gt;
! [https://developer.nvidia.com/blog/accelerating-ai-training-with-tf32-tensor-cores/ TF32] Performance ([https://developer.nvidia.com/blog/accelerating-inference-with-sparsity-using-ampere-and-tensorrt Dense / Sparse TOPS])&lt;br /&gt;
|-&lt;br /&gt;
| RTX PRO 6000 Blackwell Max-Q Workstation Edition&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000bw-mq&amp;lt;/code&amp;gt;&lt;br /&gt;
| Blackwell&lt;br /&gt;
| 24064&lt;br /&gt;
| 96GB GDDR7&lt;br /&gt;
| 1.79 TB/s&lt;br /&gt;
| 109.7&lt;br /&gt;
| 219.5/438.9&lt;br /&gt;
|-&lt;br /&gt;
| L40S&lt;br /&gt;
| &amp;lt;code&amp;gt;l40s&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 864GB/s&lt;br /&gt;
| 91.6&lt;br /&gt;
| 183/366&lt;br /&gt;
|-&lt;br /&gt;
| RTX 6000 Ada Generation&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000ada&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 960GB/s&lt;br /&gt;
| 91.1&lt;br /&gt;
| 182.1/364.2&lt;br /&gt;
|-&lt;br /&gt;
| H100 NVLink [0]&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-nvl&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 33792&lt;br /&gt;
| 188GB HBM3&lt;br /&gt;
| 7.87TB/s&lt;br /&gt;
| 133.8&lt;br /&gt;
| not officially published/1671&lt;br /&gt;
|-&lt;br /&gt;
| H100 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 80GB HBM3&lt;br /&gt;
| 3.35TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| H200 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h200-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 141GB HBM3e&lt;br /&gt;
| 4.89TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| A100 PCIe 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 1.94TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| A100 SXM 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 2.04TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3070&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3070&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 5888&lt;br /&gt;
| 8GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 20.3&lt;br /&gt;
| 20.3/40.6&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3090&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3090&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10496&lt;br /&gt;
| 24GB GDDR6X&lt;br /&gt;
| 936GB/s&lt;br /&gt;
| 35.6&lt;br /&gt;
| 35.6/71&lt;br /&gt;
|-&lt;br /&gt;
| RTX A4000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa4000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6144&lt;br /&gt;
| 16GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 19.2&lt;br /&gt;
| not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A5000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa5000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 8192&lt;br /&gt;
| 24GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 27.8&lt;br /&gt;
| not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A6000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10752&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 38.7&lt;br /&gt;
| 77.4/154.8&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 2080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx2080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Turing&lt;br /&gt;
| 4352&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 616GB/s&lt;br /&gt;
| 13.4&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX 1080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;gtx1080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 484GB/s&lt;br /&gt;
| 11.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Quadro P6000&lt;br /&gt;
| &amp;lt;code&amp;gt;p6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 24GB GDDR5X&lt;br /&gt;
| 432GB/s&lt;br /&gt;
| 12.6&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Tesla P100&lt;br /&gt;
| &amp;lt;code&amp;gt;p100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 16GB CoWoS HBM2&lt;br /&gt;
| 732GB/s&lt;br /&gt;
| 9.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN X (Pascal)&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxpascal&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 480GB/s&lt;br /&gt;
| 11.0&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN Xp&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxp&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 548GB/s&lt;br /&gt;
| 12.1&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX TITAN X&lt;br /&gt;
| &amp;lt;code&amp;gt;gtxtitanx&amp;lt;/code&amp;gt;&lt;br /&gt;
| Maxwell&lt;br /&gt;
| 3072&lt;br /&gt;
| 12GB GDDR5&lt;br /&gt;
| 336GB/s&lt;br /&gt;
| 6.7&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[0] - This GPU type is actually a pair of two physical cards connected over [https://www.nvidia.com/en-us/data-center/nvlink NVLink] bridges. NVIDIA&#039;s provided specifications for this GPU type are for one physical card; to get these specs, we have hence doubled NVIDIA&#039;s provided values.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13309</id>
		<title>Nexus/GPUs</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13309"/>
		<updated>2026-07-17T17:56:49Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are several different types of [https://www.nvidia.com/en-us/ NVIDIA] GPUs in the [[Nexus]] cluster that are available to be scheduled. They are listed below in order of newest to oldest architecture, and then alphanumerically by name.&lt;br /&gt;
&lt;br /&gt;
The exact quantities of GPUs per type are not listed here since these numbers may change frequently due to additions to or removals from the cluster or during compute node troubleshooting. To see which compute nodes have which GPUs and in what quantities, use the &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; command on a submission or compute node. The quantities are listed under the &amp;lt;tt&amp;gt;GRES&amp;lt;/tt&amp;gt; column.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Name&lt;br /&gt;
! GRES string ([[SLURM]])&lt;br /&gt;
! [https://www.nvidia.com/en-us/technologies Architecture]&lt;br /&gt;
! [https://developer.nvidia.com/cuda-toolkit CUDA] Cores&lt;br /&gt;
! Memory Amount and Type&lt;br /&gt;
! Memory Bandwidth&lt;br /&gt;
! FP32 Performance (TFLOPS)&lt;br /&gt;
! [https://developer.nvidia.com/blog/accelerating-ai-training-with-tf32-tensor-cores/ TF32] Performance ([https://developer.nvidia.com/blog/accelerating-inference-with-sparsity-using-ampere-and-tensorrt Dense / Sparse TOPS])&lt;br /&gt;
|-&lt;br /&gt;
| RTX PRO 6000 Blackwell Max-Q Workstation&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000bw-mq&amp;lt;/code&amp;gt;&lt;br /&gt;
| Blackwell&lt;br /&gt;
| 24064&lt;br /&gt;
| 96GB GDDR7&lt;br /&gt;
| 1.79 TB/s&lt;br /&gt;
| 109.7&lt;br /&gt;
| 219.5/438.9&lt;br /&gt;
|-&lt;br /&gt;
| L40S&lt;br /&gt;
| &amp;lt;code&amp;gt;l40s&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 864GB/s&lt;br /&gt;
| 91.6&lt;br /&gt;
| 183/366&lt;br /&gt;
|-&lt;br /&gt;
| RTX 6000 Ada Generation&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000ada&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 960GB/s&lt;br /&gt;
| 91.1&lt;br /&gt;
| 182.1/364.2&lt;br /&gt;
|-&lt;br /&gt;
| H100 NVLink [0]&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-nvl&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 33792&lt;br /&gt;
| 188GB HBM3&lt;br /&gt;
| 7.87TB/s&lt;br /&gt;
| 133.8&lt;br /&gt;
| not officially published/1671&lt;br /&gt;
|-&lt;br /&gt;
| H100 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 80GB HBM3&lt;br /&gt;
| 3.35TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| H200 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h200-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 141GB HBM3e&lt;br /&gt;
| 4.89TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| A100 PCIe 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 1.94TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| A100 SXM 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 2.04TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3070&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3070&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 5888&lt;br /&gt;
| 8GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 20.3&lt;br /&gt;
| 20.3/40.6&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3090&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3090&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10496&lt;br /&gt;
| 24GB GDDR6X&lt;br /&gt;
| 936GB/s&lt;br /&gt;
| 35.6&lt;br /&gt;
| 35.6/71&lt;br /&gt;
|-&lt;br /&gt;
| RTX A4000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa4000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6144&lt;br /&gt;
| 16GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 19.2&lt;br /&gt;
| not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A5000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa5000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 8192&lt;br /&gt;
| 24GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 27.8&lt;br /&gt;
| not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A6000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10752&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 38.7&lt;br /&gt;
| 77.4/154.8&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 2080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx2080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Turing&lt;br /&gt;
| 4352&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 616GB/s&lt;br /&gt;
| 13.4&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX 1080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;gtx1080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 484GB/s&lt;br /&gt;
| 11.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Quadro P6000&lt;br /&gt;
| &amp;lt;code&amp;gt;p6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 24GB GDDR5X&lt;br /&gt;
| 432GB/s&lt;br /&gt;
| 12.6&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Tesla P100&lt;br /&gt;
| &amp;lt;code&amp;gt;p100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 16GB CoWoS HBM2&lt;br /&gt;
| 732GB/s&lt;br /&gt;
| 9.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN X (Pascal)&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxpascal&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 480GB/s&lt;br /&gt;
| 11.0&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN Xp&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxp&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 548GB/s&lt;br /&gt;
| 12.1&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX TITAN X&lt;br /&gt;
| &amp;lt;code&amp;gt;gtxtitanx&amp;lt;/code&amp;gt;&lt;br /&gt;
| Maxwell&lt;br /&gt;
| 3072&lt;br /&gt;
| 12GB GDDR5&lt;br /&gt;
| 336GB/s&lt;br /&gt;
| 6.7&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[0] - This GPU type is actually a pair of two physical cards connected over [https://www.nvidia.com/en-us/data-center/nvlink NVLink] bridges. NVIDIA&#039;s provided specifications for this GPU type are for one physical card; to get these specs, we have hence doubled NVIDIA&#039;s provided values.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13308</id>
		<title>Nexus/GPUs</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/GPUs&amp;diff=13308"/>
		<updated>2026-07-17T17:55:36Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;There are several different types of [https://www.nvidia.com/en-us/ NVIDIA] GPUs in the [[Nexus]] cluster that are available to be scheduled. They are listed below in order of newest to oldest architecture, and then alphanumerically by name.&lt;br /&gt;
&lt;br /&gt;
The exact quantities of GPUs per type are not listed here since these numbers may change frequently due to additions to or removals from the cluster or during compute node troubleshooting. To see which compute nodes have which GPUs and in what quantities, use the &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; command on a submission or compute node. The quantities are listed under the &amp;lt;tt&amp;gt;GRES&amp;lt;/tt&amp;gt; column.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Name&lt;br /&gt;
! GRES string ([[SLURM]])&lt;br /&gt;
! [https://www.nvidia.com/en-us/technologies Architecture]&lt;br /&gt;
! [https://developer.nvidia.com/cuda-toolkit CUDA] Cores&lt;br /&gt;
! Memory Amount and Type&lt;br /&gt;
! Memory Bandwidth&lt;br /&gt;
! FP32 Performance (TFLOPS)&lt;br /&gt;
! [https://developer.nvidia.com/blog/accelerating-ai-training-with-tf32-tensor-cores/ TF32] Performance ([https://developer.nvidia.com/blog/accelerating-inference-with-sparsity-using-ampere-and-tensorrt Dense / Sparse TOPS])&lt;br /&gt;
|-&lt;br /&gt;
| RTX PRO 6000 Blackwell Max-Q Workstation&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000bw-mq&amp;lt;/code&amp;gt;&lt;br /&gt;
| Blackwell&lt;br /&gt;
| 24064&lt;br /&gt;
| 96 GB GDDR7&lt;br /&gt;
| 1.79 TB/s&lt;br /&gt;
| 126.0&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| L40S&lt;br /&gt;
| &amp;lt;code&amp;gt;l40s&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 864GB/s&lt;br /&gt;
| 91.6&lt;br /&gt;
| 183/366&lt;br /&gt;
|-&lt;br /&gt;
| RTX 6000 Ada Generation&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx6000ada&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ada Lovelace&lt;br /&gt;
| 18176&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 960GB/s&lt;br /&gt;
| 91.1&lt;br /&gt;
| 182.1/364.2&lt;br /&gt;
|-&lt;br /&gt;
| H100 NVLink [0]&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-nvl&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 33792&lt;br /&gt;
| 188GB HBM3&lt;br /&gt;
| 7.87TB/s&lt;br /&gt;
| 133.8&lt;br /&gt;
| not officially published/1671&lt;br /&gt;
|-&lt;br /&gt;
| H100 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h100-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 80GB HBM3&lt;br /&gt;
| 3.35TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| H200 SXM&lt;br /&gt;
| &amp;lt;code&amp;gt;h200-sxm&amp;lt;/code&amp;gt;&lt;br /&gt;
| Hopper&lt;br /&gt;
| 16896&lt;br /&gt;
| 141GB HBM3e&lt;br /&gt;
| 4.89TB/s&lt;br /&gt;
| 66.9&lt;br /&gt;
| not officially published/989&lt;br /&gt;
|-&lt;br /&gt;
| A100 PCIe 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 1.94TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| A100 SXM 80GB&lt;br /&gt;
| &amp;lt;code&amp;gt;a100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6912&lt;br /&gt;
| 80GB HBM2e&lt;br /&gt;
| 2.04TB/s&lt;br /&gt;
| 19.5&lt;br /&gt;
| 156/312&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3070&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3070&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 5888&lt;br /&gt;
| 8GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 20.3&lt;br /&gt;
| 20.3/40.6&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 3090&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx3090&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10496&lt;br /&gt;
| 24GB GDDR6X&lt;br /&gt;
| 936GB/s&lt;br /&gt;
| 35.6&lt;br /&gt;
| 35.6/71&lt;br /&gt;
|-&lt;br /&gt;
| RTX A4000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa4000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 6144&lt;br /&gt;
| 16GB GDDR6&lt;br /&gt;
| 448GB/s&lt;br /&gt;
| 19.2&lt;br /&gt;
| not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A5000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa5000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 8192&lt;br /&gt;
| 24GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 27.8&lt;br /&gt;
| not officially published&lt;br /&gt;
|-&lt;br /&gt;
| RTX A6000&lt;br /&gt;
| &amp;lt;code&amp;gt;rtxa6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Ampere&lt;br /&gt;
| 10752&lt;br /&gt;
| 48GB GDDR6&lt;br /&gt;
| 768GB/s&lt;br /&gt;
| 38.7&lt;br /&gt;
| 77.4/154.8&lt;br /&gt;
|-&lt;br /&gt;
| GeForce RTX 2080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;rtx2080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Turing&lt;br /&gt;
| 4352&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 616GB/s&lt;br /&gt;
| 13.4&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX 1080 Ti&lt;br /&gt;
| &amp;lt;code&amp;gt;gtx1080ti&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 11GB GDDR5X&lt;br /&gt;
| 484GB/s&lt;br /&gt;
| 11.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Quadro P6000&lt;br /&gt;
| &amp;lt;code&amp;gt;p6000&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 24GB GDDR5X&lt;br /&gt;
| 432GB/s&lt;br /&gt;
| 12.6&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| Tesla P100&lt;br /&gt;
| &amp;lt;code&amp;gt;p100&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 16GB CoWoS HBM2&lt;br /&gt;
| 732GB/s&lt;br /&gt;
| 9.3&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN X (Pascal)&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxpascal&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3584&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 480GB/s&lt;br /&gt;
| 11.0&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| TITAN Xp&lt;br /&gt;
| &amp;lt;code&amp;gt;titanxp&amp;lt;/code&amp;gt;&lt;br /&gt;
| Pascal&lt;br /&gt;
| 3840&lt;br /&gt;
| 12GB GDDR5X&lt;br /&gt;
| 548GB/s&lt;br /&gt;
| 12.1&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
| GeForce GTX TITAN X&lt;br /&gt;
| &amp;lt;code&amp;gt;gtxtitanx&amp;lt;/code&amp;gt;&lt;br /&gt;
| Maxwell&lt;br /&gt;
| 3072&lt;br /&gt;
| 12GB GDDR5&lt;br /&gt;
| 336GB/s&lt;br /&gt;
| 6.7&lt;br /&gt;
| n/a&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[0] - This GPU type is actually a pair of two physical cards connected over [https://www.nvidia.com/en-us/data-center/nvlink NVLink] bridges. NVIDIA&#039;s provided specifications for this GPU type are for one physical card; to get these specs, we have hence doubled NVIDIA&#039;s provided values.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=CML&amp;diff=13307</id>
		<title>CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=CML&amp;diff=13307"/>
		<updated>2026-07-17T17:55:06Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Center for Machine Learning ([https://ml.umd.edu CML]) at the University of Maryland is located within the Institute for Advanced Computer Studies.  The CML has a cluster of computational (CPU/GPU) resources that are available to be scheduled.&lt;br /&gt;
&lt;br /&gt;
=Getting Started=&lt;br /&gt;
* [[SLURM/JobSubmission | Submitting Jobs]]&lt;br /&gt;
* [[SLURM/JobStatus | Checking Job Status]]&lt;br /&gt;
* [[Nexus/CML#Storage | Data Storage]]&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13306</id>
		<title>Nexus/Vulcan</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13306"/>
		<updated>2026-07-17T17:52:38Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Partitions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from Vulcan&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusvulcan.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vulcan users (exclusively) can schedule non-interruptible jobs on Vulcan nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;vulcan-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all vulcan## in aggregate nodes plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;vulcan&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the Vulcan compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. Vulcan users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition (i.e., all &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs).&lt;br /&gt;
&lt;br /&gt;
==Compute Nodes==&lt;br /&gt;
There are currently 22 [[Nexus/Vulcan/GPUs | GPU nodes]] available, named vulcan[23-24,27-46], running a mixture of NVIDIA H200, NVIDIA RTX A6000, NVIDIA RTX A5000, NVIDIA RTX A4000, and NVIDIA GeForce RTX 2080 Ti cards. There are also 2 CPU-only nodes available, named brigid[16-17].&lt;br /&gt;
&lt;br /&gt;
All nodes are scheduled with the [[SLURM]] resource manager.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the Vulcan partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* brigid[16-17],vulcan[29-45]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* vulcan46: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of switches through several sets of intermediary switches, and to each other via dual 10GbE links for redundancy. The immediate connection to these sets of intermediary switches is via two 40GbE links to a pair of them, one between the first two switches in each pair and one between the second two switches in each pair for redundancy. This pair serves the following compute nodes:&lt;br /&gt;
#* vulcan[23-24,27-28]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all Vulcan [[Nexus/Vulcan#Scratch_Directories | scratch]], [[Nexus/Vulcan#Project_Storage | project]], and [[Nexus/Vulcan#Datasets | dataset]] allocations first connects to a pair of intermediary switches and then the first pair of switches mentioned [[Nexus/Tron#Network | here (Tron page&#039;s network section)]]. It then connects to the first pair of switches mentioned on this page through a set of four (different) intermediary switches. The last hop from the four intermediary switches to the first pair of switches mentioned on this page is via 32 100GbE links, four from each switch in the set to each switch in the first pair mentioned on this page for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general Vulcan [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed. Only nodes with GPUs from architectures older than NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] are included in this partition.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other non-scavenger-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available to subsets of Vulcan users based on specific requirements.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ampere&#039;&#039;&#039; - This partition contains nodes with GPUs from NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] or a newer architecture. Job allocations are guaranteed. Please be aware of the following restrictions on this partition:&lt;br /&gt;
*: &#039;&#039;Time limit&#039;&#039;: there is a 4 hour time limit on interactive jobs in this partition. If you need to run longer jobs, you will need to modify your workflow into a job that can be submitted as a batch script.&lt;br /&gt;
*: &#039;&#039;CPU/memory per GPU limit&#039;&#039;: there is a limit of 4 CPUs and 48G memory maximum per non-H200 GPU requested by a job, and 16 CPUs and 256G memory maximum per H200 GPU requested by a job. If you need to run jobs with more CPUs/memory, you will either need to request more GPUs in the job or use a different partition.&lt;br /&gt;
&lt;br /&gt;
: Submission is restricted to the Slurm [[#Accounts | accounts]] of the faculty who invested in these nodes:&lt;br /&gt;
:* Abhinav Shrivastava (vulcan-abhinav)&lt;br /&gt;
:* Jia-Bin Huang (vulcan-jbhuang)&lt;br /&gt;
:* Christopher Metzler (vulcan-metzler)&lt;br /&gt;
:* Ruoshi Liu (vulcan-ruoshi)&lt;br /&gt;
:* Matthias Zwicker (vulcan-zwicker)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger-multi&#039;&#039;&#039; - This partition allows multi-node jobs (up to 9 total nodes per job) and allows jobs more resources than the vulcan-scavenger partition, but only contains nodes with RTX 2080 Ti GPUs in them. As with vulcan-scavenger, it is preemptable when jobs in other non-scavenged-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
*: Access to this partition is on a per-use basis. Please contact Abhinav Shrivastava if you would like to be granted access to this partition.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Ramani Duraiswami&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Duraiswami&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
Vulcan has a base SLURM account &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in Vulcan compute infrastructure have an additional account provided to their sponsored accounts on the cluster.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;vulcan&#039;&#039;&#039; account.  If your faculty sponsor has their own account, it is recommended to use that account for job submission.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* vulcan-abhinav&lt;br /&gt;
* vulcan-djacobs&lt;br /&gt;
* vulcan-jbhuang&lt;br /&gt;
* vulcan-metzler&lt;br /&gt;
* vulcan-rama&lt;br /&gt;
* vulcan-ramani&lt;br /&gt;
* vulcan-ruoshi&lt;br /&gt;
* vulcan-yaser&lt;br /&gt;
* vulcan-zwicker&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
              vulcan                         vulcan     vulcan&lt;br /&gt;
      vulcan-abhinav   vulcan - abhinav shrivastava     vulcan&lt;br /&gt;
      vulcan-djacobs          vulcan - david jacobs     vulcan&lt;br /&gt;
      vulcan-jbhuang         vulcan - jia-bin huang     vulcan&lt;br /&gt;
      vulcan-metzler         vulcan - chris metzler     vulcan&lt;br /&gt;
         vulcan-rama        vulcan - rama chellappa     vulcan&lt;br /&gt;
       vulcan-ramani     vulcan - ramani duraiswami     vulcan&lt;br /&gt;
       vulcan-ruoshi            vulcan - ruoshi liu     vulcan&lt;br /&gt;
        vulcan-yaser          vulcan - yaser yacoob     vulcan&lt;br /&gt;
      vulcan-zwicker      vulcan - matthias zwicker     vulcan&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage this list of users via our [https://intranet.umiacs.umd.edu/directory/secgroup/ Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;vulcan_&amp;lt;/code&amp;gt; and then the faculty username.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command to see the accounts you are associated with.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                                              QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------------------------------------&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
   abhinav           vulcan      48                                       vulcan-cpu,vulcan-default,vulcan-medium,vulcan-scavenger&lt;br /&gt;
   abhinav   vulcan-abhinav      48                           vulcan-cpu,vulcan-default,vulcan-high,vulcan-medium,vulcan-scavenger&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. As shown below, there is a concurrent limit of 64 total GPUs for all users not in a contributing faculty group.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=vulcan format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
               vulcan                        gres/gpu=64&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
Vulcan currently has 3 QoS for the &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; partition, 1 QoS for the &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;vulcan-default&amp;lt;/code&amp;gt; QoS assuming you are using a Vulcan account.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep vulcan&lt;br /&gt;
                     Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU&lt;br /&gt;
------------------------- ----------- ------------------------------ --------- ------------------------------&lt;br /&gt;
...&lt;br /&gt;
               vulcan-cpu  2-00:00:00                cpu=1024,mem=4T         4                               &lt;br /&gt;
           vulcan-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2                               &lt;br /&gt;
            vulcan-exempt  7-00:00:00     cpu=32,gres/gpu=8,mem=256G         2                               &lt;br /&gt;
              vulcan-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2                               &lt;br /&gt;
         vulcan-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                               &lt;br /&gt;
            vulcan-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2                               &lt;br /&gt;
            vulcan-sailon  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                              gres/gpu=48&lt;br /&gt;
         vulcan-scavenger  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                                         &lt;br /&gt;
   vulcan-scavenger-multi  3-00:00:00   cpu=288,gres/gpu=72,mem=1152G                                        &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep vulcan&lt;br /&gt;
                     Name MaxSubmitPU                      MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- ------------------------------ --------------------&lt;br /&gt;
...&lt;br /&gt;
                   vulcan         500                                 cpu=1760,mem=15824G&lt;br /&gt;
            vulcan-ampere         500                                                    &lt;br /&gt;
               vulcan-cpu         500                                                    &lt;br /&gt;
            vulcan-ramani         500                                                    &lt;br /&gt;
         vulcan-scavenger         500                                                    &lt;br /&gt;
   vulcan-scavenger-multi         500                                                    &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
Vulcan has the following storage available.  Please also review UMIACS [[FilesystemDataStorage | Filesystem Data Storage]] policies including any volume that is labeled as scratch.&lt;br /&gt;
&lt;br /&gt;
Vulcan users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the Vulcan compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 300GB of scratch storage available at &amp;lt;code&amp;gt;/vulcanscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a temporary increase of up to 500GB total space for a maximum of 120 days without any faculty approval by [[HelpDesk | contacting staff]].  Once the temporary increase period is over, you will be contacted and given a one-week window of opportunity to clean and secure your data before staff will forcibly remove data to get your space back under 300GB.  If you need space beyond 500GB or for longer than 120 days, you will need faculty approval and/or a project directory.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage their data within the confine of their job and stage the data out before the end of their job.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month at 1am.  Different nodes will run the maintenance jobs on different days of the month to ensure the cluster is still highly available at all times.  Please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/vulcan-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of Vulcan datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=Vulcan here].&lt;br /&gt;
&lt;br /&gt;
===Project Storage===&lt;br /&gt;
Users within the Vulcan compute infrastructure can request project based allocations for up to 10TB for up to 180 days by [[HelpDesk | contacting staff]] with approval from the Vulcan faculty manager (Dr. Shrivastava).  These allocations will be available from &amp;lt;code&amp;gt;/fs/vulcan-projects&amp;lt;/code&amp;gt; under a name that you provide when you request the allocation.  Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 180 days (requires re-approval from Dr. Shrivastava).&lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then remove the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but the original faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and the faculty approver responding, staff will remove the allocation.&lt;br /&gt;
&lt;br /&gt;
Project storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
===Object Storage===&lt;br /&gt;
All Vulcan users can request project allocations in the [https://obj.umiacs.umd.edu/obj/help UMIACS Object Store]. Please [[HelpDesk | contact staff]] with a short project name and the amount of storage you will need to get started.&lt;br /&gt;
&lt;br /&gt;
To access this storage, you&#039;ll need to use a [[S3Clients | S3 client]] or our [[UMobj]] command line utilities.&lt;br /&gt;
&lt;br /&gt;
An example on how to use the umobj command line utilities can be found [[UMobj/Example | here]].  A full set of documentation for the utilities can be found on the [https://gitlab.umiacs.umd.edu/staff/umobj/blob/master/README.md#umobj umobj Gitlab page].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13305</id>
		<title>Nexus/Vulcan</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13305"/>
		<updated>2026-07-17T17:51:58Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from Vulcan&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusvulcan.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Vulcan users (exclusively) can schedule non-interruptible jobs on Vulcan nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;vulcan-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all vulcan## in aggregate nodes plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;vulcan&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the Vulcan compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. Vulcan users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition (i.e., all &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs).&lt;br /&gt;
&lt;br /&gt;
==Compute Nodes==&lt;br /&gt;
There are currently 22 [[Nexus/Vulcan/GPUs | GPU nodes]] available, named vulcan[23-24,27-46], running a mixture of NVIDIA H200, NVIDIA RTX A6000, NVIDIA RTX A5000, NVIDIA RTX A4000, and NVIDIA GeForce RTX 2080 Ti cards. There are also 2 CPU-only nodes available, named brigid[16-17].&lt;br /&gt;
&lt;br /&gt;
All nodes are scheduled with the [[SLURM]] resource manager.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the Vulcan partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* brigid[16-17],vulcan[29-45]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* vulcan46: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of switches through several sets of intermediary switches, and to each other via dual 10GbE links for redundancy. The immediate connection to these sets of intermediary switches is via two 40GbE links to a pair of them, one between the first two switches in each pair and one between the second two switches in each pair for redundancy. This pair serves the following compute nodes:&lt;br /&gt;
#* vulcan[23-24,27-28]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all Vulcan [[Nexus/Vulcan#Scratch_Directories | scratch]], [[Nexus/Vulcan#Project_Storage | project]], and [[Nexus/Vulcan#Datasets | dataset]] allocations first connects to a pair of intermediary switches and then the first pair of switches mentioned [[Nexus/Tron#Network | here (Tron page&#039;s network section)]]. It then connects to the first pair of switches mentioned on this page through a set of four (different) intermediary switches. The last hop from the four intermediary switches to the first pair of switches mentioned on this page is via 32 100GbE links, four from each switch in the set to each switch in the first pair mentioned on this page for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general Vulcan [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed. Only nodes with GPUs from architectures older than NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] are included in this partition.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other non-scavenger-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available to subsets of Vulcan users based on specific requirements.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ampere&#039;&#039;&#039; - This partition contains nodes with GPUs from NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] or a newer architecture. Job allocations are guaranteed. Please be aware of the following restrictions on this partition:&lt;br /&gt;
*: &#039;&#039;Time limit&#039;&#039;: there is a 4 hour time limit on interactive jobs in this partition. If you need to run longer jobs, you will need to modify your workflow into a job that can be submitted as a batch script.&lt;br /&gt;
*: &#039;&#039;CPU/memory per GPU limit&#039;&#039;: there is a limit of 4 CPUs and 48G memory maximum per non-H200 GPU requested by a job, and 16 CPUs and 256G memory maximum per H200 GPU requested by a job. If you need to run jobs with more CPUs/memory, you will either need to request more GPUs in the job or use a different partition.&lt;br /&gt;
&lt;br /&gt;
: Submission is restricted to the Slurm [[#Accounts | accounts]] of the faculty who invested in these nodes:&lt;br /&gt;
:* Abhinav Shrivastava (vulcan-abhinav)&lt;br /&gt;
:* Jia-Bin Huang (vulcan-jbhuang)&lt;br /&gt;
:* Christopher Metzler (vulcan-metzler)&lt;br /&gt;
:* Ruoshi Liu (vulcan-ruoshi)&lt;br /&gt;
:* Matthias Zwicker (vulcan-zwicker)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger-multi&#039;&#039;&#039; - This partition allows multi-node jobs (up to 9 total nodes per job) and allows jobs more resources than the vulcan-scavenger partition, but only contains nodes with GTX 1080 Ti, TITAN Xp, and/or RTX 2080 Ti GPUs in them. As with vulcan-scavenger, it is preemptable when jobs in other non-scavenged-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
*: Access to this partition is on a per-use basis. Please contact Abhinav Shrivastava if you would like to be granted access to this partition.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Ramani Duraiswami&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Duraiswami&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
Vulcan has a base SLURM account &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in Vulcan compute infrastructure have an additional account provided to their sponsored accounts on the cluster.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;vulcan&#039;&#039;&#039; account.  If your faculty sponsor has their own account, it is recommended to use that account for job submission.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* vulcan-abhinav&lt;br /&gt;
* vulcan-djacobs&lt;br /&gt;
* vulcan-jbhuang&lt;br /&gt;
* vulcan-metzler&lt;br /&gt;
* vulcan-rama&lt;br /&gt;
* vulcan-ramani&lt;br /&gt;
* vulcan-ruoshi&lt;br /&gt;
* vulcan-yaser&lt;br /&gt;
* vulcan-zwicker&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
              vulcan                         vulcan     vulcan&lt;br /&gt;
      vulcan-abhinav   vulcan - abhinav shrivastava     vulcan&lt;br /&gt;
      vulcan-djacobs          vulcan - david jacobs     vulcan&lt;br /&gt;
      vulcan-jbhuang         vulcan - jia-bin huang     vulcan&lt;br /&gt;
      vulcan-metzler         vulcan - chris metzler     vulcan&lt;br /&gt;
         vulcan-rama        vulcan - rama chellappa     vulcan&lt;br /&gt;
       vulcan-ramani     vulcan - ramani duraiswami     vulcan&lt;br /&gt;
       vulcan-ruoshi            vulcan - ruoshi liu     vulcan&lt;br /&gt;
        vulcan-yaser          vulcan - yaser yacoob     vulcan&lt;br /&gt;
      vulcan-zwicker      vulcan - matthias zwicker     vulcan&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage this list of users via our [https://intranet.umiacs.umd.edu/directory/secgroup/ Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;vulcan_&amp;lt;/code&amp;gt; and then the faculty username.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command to see the accounts you are associated with.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                                              QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------------------------------------&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
   abhinav           vulcan      48                                       vulcan-cpu,vulcan-default,vulcan-medium,vulcan-scavenger&lt;br /&gt;
   abhinav   vulcan-abhinav      48                           vulcan-cpu,vulcan-default,vulcan-high,vulcan-medium,vulcan-scavenger&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. As shown below, there is a concurrent limit of 64 total GPUs for all users not in a contributing faculty group.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=vulcan format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
               vulcan                        gres/gpu=64&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
Vulcan currently has 3 QoS for the &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; partition, 1 QoS for the &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;vulcan-default&amp;lt;/code&amp;gt; QoS assuming you are using a Vulcan account.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep vulcan&lt;br /&gt;
                     Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU&lt;br /&gt;
------------------------- ----------- ------------------------------ --------- ------------------------------&lt;br /&gt;
...&lt;br /&gt;
               vulcan-cpu  2-00:00:00                cpu=1024,mem=4T         4                               &lt;br /&gt;
           vulcan-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2                               &lt;br /&gt;
            vulcan-exempt  7-00:00:00     cpu=32,gres/gpu=8,mem=256G         2                               &lt;br /&gt;
              vulcan-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2                               &lt;br /&gt;
         vulcan-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                               &lt;br /&gt;
            vulcan-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2                               &lt;br /&gt;
            vulcan-sailon  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                              gres/gpu=48&lt;br /&gt;
         vulcan-scavenger  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                                         &lt;br /&gt;
   vulcan-scavenger-multi  3-00:00:00   cpu=288,gres/gpu=72,mem=1152G                                        &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep vulcan&lt;br /&gt;
                     Name MaxSubmitPU                      MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- ------------------------------ --------------------&lt;br /&gt;
...&lt;br /&gt;
                   vulcan         500                                 cpu=1760,mem=15824G&lt;br /&gt;
            vulcan-ampere         500                                                    &lt;br /&gt;
               vulcan-cpu         500                                                    &lt;br /&gt;
            vulcan-ramani         500                                                    &lt;br /&gt;
         vulcan-scavenger         500                                                    &lt;br /&gt;
   vulcan-scavenger-multi         500                                                    &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
Vulcan has the following storage available.  Please also review UMIACS [[FilesystemDataStorage | Filesystem Data Storage]] policies including any volume that is labeled as scratch.&lt;br /&gt;
&lt;br /&gt;
Vulcan users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the Vulcan compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 300GB of scratch storage available at &amp;lt;code&amp;gt;/vulcanscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a temporary increase of up to 500GB total space for a maximum of 120 days without any faculty approval by [[HelpDesk | contacting staff]].  Once the temporary increase period is over, you will be contacted and given a one-week window of opportunity to clean and secure your data before staff will forcibly remove data to get your space back under 300GB.  If you need space beyond 500GB or for longer than 120 days, you will need faculty approval and/or a project directory.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage their data within the confine of their job and stage the data out before the end of their job.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month at 1am.  Different nodes will run the maintenance jobs on different days of the month to ensure the cluster is still highly available at all times.  Please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/vulcan-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of Vulcan datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=Vulcan here].&lt;br /&gt;
&lt;br /&gt;
===Project Storage===&lt;br /&gt;
Users within the Vulcan compute infrastructure can request project based allocations for up to 10TB for up to 180 days by [[HelpDesk | contacting staff]] with approval from the Vulcan faculty manager (Dr. Shrivastava).  These allocations will be available from &amp;lt;code&amp;gt;/fs/vulcan-projects&amp;lt;/code&amp;gt; under a name that you provide when you request the allocation.  Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 180 days (requires re-approval from Dr. Shrivastava).&lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then remove the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but the original faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and the faculty approver responding, staff will remove the allocation.&lt;br /&gt;
&lt;br /&gt;
Project storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
===Object Storage===&lt;br /&gt;
All Vulcan users can request project allocations in the [https://obj.umiacs.umd.edu/obj/help UMIACS Object Store]. Please [[HelpDesk | contact staff]] with a short project name and the amount of storage you will need to get started.&lt;br /&gt;
&lt;br /&gt;
To access this storage, you&#039;ll need to use a [[S3Clients | S3 client]] or our [[UMobj]] command line utilities.&lt;br /&gt;
&lt;br /&gt;
An example on how to use the umobj command line utilities can be found [[UMobj/Example | here]].  A full set of documentation for the utilities can be found on the [https://gitlab.umiacs.umd.edu/staff/umobj/blob/master/README.md#umobj umobj Gitlab page].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CLIP&amp;diff=13304</id>
		<title>Nexus/CLIP</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CLIP&amp;diff=13304"/>
		<updated>2026-07-17T17:48:57Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The previous standalone cluster for [https://wiki.umiacs.umd.edu/clip/index.php/Main_Page CLIP]&#039;s compute nodes have folded into [[Nexus]] as of late 2022.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusclip.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusclip00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusclip01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
The CLIP partition has nodes brought over from the previous standalone CLIP Slurm scheduler as well as some more recent purchases. The compute nodes are named &amp;lt;code&amp;gt;clip##&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the CLIP partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 25GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* clip04: Two 40GbE links, one to each switch in the pair (redundancy).&lt;br /&gt;
#* clip[05,14]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* clip06: Two 25GbE links, one to each switch in the pair (redundancy).&lt;br /&gt;
#* clip[11-13]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
CLIP users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &amp;lt;code&amp;gt;clip&amp;lt;/code&amp;gt; partition using the &amp;lt;code&amp;gt;clip&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the CLIP partition specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=clip&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=clip&amp;lt;/code&amp;gt; to be able to submit jobs to the CLIP partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexusclip00:~ ] $ srun --pty --ntasks=4 --mem=8G --qos=default --partition=clip --account=clip --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@clip00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=clip QOS=default&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=clip AllocNode:Sid=nexusclip00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=clip04&lt;br /&gt;
   BatchHost=clip04&lt;br /&gt;
   NumNodes=1 NumCPUs=4 NumTasks=4 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=4,mem=8G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=8G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
All data filesystems that were available in the standalone CLIP cluster are also available in Nexus.&lt;br /&gt;
&lt;br /&gt;
CLIP users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13303</id>
		<title>Nexus/CBCB</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13303"/>
		<updated>2026-07-17T17:46:02Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Compute Nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CBCB]]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscbcb.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
All compute nodes in CBCB-owned partitions (see below section) owned by CBCB faculty are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;. The sets of nodes are:&lt;br /&gt;
* 22 nodes that were purchased in October 2022 with center-wide funding: cbcb[00-21]&lt;br /&gt;
* 1 node from the previous standalone CBCB cluster that moved in as of Summer 2023: cbcb25&lt;br /&gt;
* 4 additional nodes purchased by Dr. Heng Huang: cbcb[26-29]&lt;br /&gt;
* 1 additional node purchased by Dr. Mihai Pop: cbcb30&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node (CPUs)&lt;br /&gt;
! Memory per node (type)&lt;br /&gt;
! Filesystem storage per node (type/location)&lt;br /&gt;
! GPUs per node (type)&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[00-21]&lt;br /&gt;
|22&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7313.html AMD EPYC 7313])&lt;br /&gt;
|~2TB (DDR4 3200MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~2TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
|cbcb25&lt;br /&gt;
|1&lt;br /&gt;
|24 (Dual [https://www.intel.com/content/www/us/en/products/sku/91767/intel-xeon-processor-e52650-v4-30m-cache-2-20-ghz/specifications.html Intel Xeon E5-2650 v4])&lt;br /&gt;
|~256GB (DDR4 2400MHz)&lt;br /&gt;
|~1.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|2 (1x [https://www.nvidia.com/en-gb/geforce/graphics-cards/geforce-gtx-1080-ti/specifications/ NVIDIA GeForce GTX 1080 Ti], 1x [https://www.nvidia.com/en-us/geforce/graphics-cards/compare/?section=compare-20 NVIDIA GeForce RTX 2080 Ti])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb26&lt;br /&gt;
|1&lt;br /&gt;
|128 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7763.html AMD EPYC 7763])&lt;br /&gt;
|~512GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~14TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|7 ([https://www.nvidia.com/en-us/design-visualization/rtx-a5000 NVIDIA RTX A5000])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb27&lt;br /&gt;
|1&lt;br /&gt;
|64 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7513.html AMD EPYC 7513])&lt;br /&gt;
|~256GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~3.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-a6000 NVIDIA RTX A6000])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[28-29]&lt;br /&gt;
|2&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/4th-generation-9004-and-8004-series/amd-epyc-9124.html AMD EPYC 9124])&lt;br /&gt;
|~768GB (DDR5 4800MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~7TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-6000 NVIDIA RTX 6000 Ada Generation])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb30&lt;br /&gt;
|1&lt;br /&gt;
|48 (Single [https://www.amd.com/en/products/processors/server/epyc/9005-series/amd-epyc-9475f.html AMD EPYC 9475F])&lt;br /&gt;
|~1.15TB (DDR5 6400MHz)&lt;br /&gt;
|~350GB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~10.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
!Total&lt;br /&gt;
|28&lt;br /&gt;
|1032 (various)&lt;br /&gt;
|~49TB (various)&lt;br /&gt;
|~103TB (various)&lt;br /&gt;
|33 (various)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Here is the listing of nodes as shown by the Slurm alias &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; (again, all nodes are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@nexusctl00 ~]# show_nodes | grep cbcb&lt;br /&gt;
NODELIST             CPUS       MEMORY     AVAIL_FEATURES                           GRES                             STATE&lt;br /&gt;
cbcb00               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb01               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb02               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb03               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb04               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb05               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb06               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb07               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb08               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb09               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb10               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb11               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb12               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb13               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb14               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb15               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb16               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb17               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb18               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb19               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb20               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb21               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb25               24         255278     rhel8,x86_64,Xeon,E5-2650,Pascal,Turing  gpu:rtx2080ti:1,gpu:gtx1080ti:1  idle&lt;br /&gt;
cbcb26               128        513243     rhel8,x86_64,Zen,EPYC-7763,Ampere        gpu:rtxa5000:7                   idle&lt;br /&gt;
cbcb27               64         255167     rhel8,x86_64,Zen,EPYC-7513,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
cbcb28               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb29               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb30               48         1157583    rhel8,x86_64,EPYC,EPYC-9475F             (null)                           idle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the CBCB partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cbcb[00-21,26-30]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via four 40GbE links, one between every combination of switches across the two pairings for redundancy, and to each other via dual 10GbE links for redundancy.&lt;br /&gt;
#* cbcb25: Two 10GbE links, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
= Partitions =&lt;br /&gt;
There are two partitions available to general CBCB [[SLURM]] users. You must specify one of these two partitions when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb&#039;&#039;&#039; - This is the default partition. Job allocations on all nodes except those also in the &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partition are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; - This is a partition that only allows interactive jobs; you cannot submit jobs via &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; to this partition. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Heng Huang&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Huang&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
CBCB users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions using the &amp;lt;code&amp;gt;cbcb&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;highmem&amp;lt;/code&amp;gt;: Allows for significantly increased memory to be allocated.&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;only&#039;&#039; allowed job QoS for the &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; partition is:&lt;br /&gt;
* &amp;lt;code&amp;gt;interactive&amp;lt;/code&amp;gt;: Allows for 4 CPU / 128G mem jobs up to 12 hours in length - can only be used via &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;salloc&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=cbcb&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=cbcb&amp;lt;/code&amp;gt; to be able to submit jobs to the CBCB partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexuscbcb00:~ ] $ srun --pty --ntasks=16 --mem=2000G --qos=highmem --partition=cbcb --account=cbcb --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@cbcb00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=cbcb QOS=highmem&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=cbcb AllocNode:Sid=nexuscbcb00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=cbcb00&lt;br /&gt;
   BatchHost=cbcb00&lt;br /&gt;
   NumNodes=1 NumCPUs=16 NumTasks=16 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=16,mem=2000G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=2000G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
CBCB still has its current [https://wiki.umiacs.umd.edu/cbcb-private/index.php/Storage storage] allocation in place.  All data filesystems that were available in the standalone CBCB cluster are also available in Nexus.  Please note about the change in your home directory in the migration section below.&lt;br /&gt;
&lt;br /&gt;
CBCB users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
= Operating System / Software =&lt;br /&gt;
CBCB&#039;s standalone cluster submission and compute nodes were running RHEL7.  [[Nexus]] is running a mixture of RHEL8 and RHEL9, so any software you compiled on the standalone cluster may need to be re-compiled to work correctly in this new environment.  The [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules CBCB module tree] for RHEL8+ may not yet be fully populated with RHEL8+ software.  If you do not see the modules you need, please reach out to the [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules#Contact CBCB software maintainers].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13302</id>
		<title>Nexus/CBCB</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13302"/>
		<updated>2026-07-17T17:45:45Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Compute Nodes */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CBCB]]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscbcb.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
All compute nodes in CBCB-owned partitions (see below section) owned by CBCB faculty are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;. The sets of nodes are:&lt;br /&gt;
* 22 nodes that were purchased in October 2022 with center-wide funding: cbcb[00-21]&lt;br /&gt;
* 1 node from the previous standalone CBCB cluster that moved in as of Summer 2023: cbcb25&lt;br /&gt;
* 4 additional nodes purchased by Dr. Heng Huang: cbcb[26-29]&lt;br /&gt;
* 1 additional node purchased by Dr. Mihai Pop: cbcb30&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node (CPUs)&lt;br /&gt;
! Memory per node (type)&lt;br /&gt;
! Filesystem storage per node (type/location)&lt;br /&gt;
! GPUs per node (type)&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[00-21]&lt;br /&gt;
|22&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7313.html AMD EPYC 7313])&lt;br /&gt;
|~2TB (DDR4 3200MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~2TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
|cbcb25&lt;br /&gt;
|1&lt;br /&gt;
|24 (Dual [https://www.intel.com/content/www/us/en/products/sku/91767/intel-xeon-processor-e52650-v4-30m-cache-2-20-ghz/specifications.html Intel Xeon E5-2650 v4])&lt;br /&gt;
|~256GB (DDR4 2400MHz)&lt;br /&gt;
|~1.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|2 (1x [https://www.nvidia.com/en-gb/geforce/graphics-cards/geforce-gtx-1080-ti/specifications/ NVIDIA GeForce GTX 1080 Ti], 1x [https://www.nvidia.com/en-us/geforce/graphics-cards/compare/?section=compare-20 NVIDIA GeForce RTX 2080 Ti])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb26&lt;br /&gt;
|1&lt;br /&gt;
|128 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7763.html AMD EPYC 7763])&lt;br /&gt;
|~512GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~14TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|7 ([https://www.nvidia.com/en-us/design-visualization/rtx-a5000 NVIDIA RTX A5000])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb27&lt;br /&gt;
|1&lt;br /&gt;
|64 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7513.html AMD EPYC 7513])&lt;br /&gt;
|~256GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~3.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-a6000 NVIDIA RTX A6000])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[28-29]&lt;br /&gt;
|2&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/4th-generation-9004-and-8004-series/amd-epyc-9124.html AMD EPYC 9124])&lt;br /&gt;
|~768GB (DDR5 4800MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~7TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-6000 NVIDIA RTX 6000 Ada Generation])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb30&lt;br /&gt;
|1&lt;br /&gt;
|48 (Single [https://www.amd.com/en/products/processors/server/epyc/9005-series/amd-epyc-9475f.html AMD EPYC 9475F])&lt;br /&gt;
|~1.15TB (DDR5 6400MHz)&lt;br /&gt;
|~350GB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~10.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
!Total&lt;br /&gt;
|28&lt;br /&gt;
|1032 (various)&lt;br /&gt;
|~49TB (various)&lt;br /&gt;
|~103TB (various)&lt;br /&gt;
|33 (various)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Here is the listing of nodes as shown by the Slurm alias &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; (again, all nodes are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@nexusctl00 ~]# show_nodes | grep cbcb&lt;br /&gt;
NODELIST             CPUS       MEMORY     AVAIL_FEATURES                           GRES                             STATE&lt;br /&gt;
cbcb00               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb01               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb02               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb03               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb04               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb05               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb06               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb07               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb08               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb09               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb10               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb11               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb12               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb13               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb14               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb15               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb16               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb17               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb18               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb19               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb20               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb21               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb22               28         771245     rhel8,x86_64,Xeon,E5-2680                (null)                           idle&lt;br /&gt;
cbcb23               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb24               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb25               24         255278     rhel8,x86_64,Xeon,E5-2650,Pascal,Turing  gpu:rtx2080ti:1,gpu:gtx1080ti:1  idle&lt;br /&gt;
cbcb26               128        513243     rhel8,x86_64,Zen,EPYC-7763,Ampere        gpu:rtxa5000:7                   idle&lt;br /&gt;
cbcb27               64         255167     rhel8,x86_64,Zen,EPYC-7513,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
cbcb28               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb29               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb30               48         1157583    rhel8,x86_64,EPYC,EPYC-9475F             (null)                           idle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the CBCB partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cbcb[00-21,26-30]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via four 40GbE links, one between every combination of switches across the two pairings for redundancy, and to each other via dual 10GbE links for redundancy.&lt;br /&gt;
#* cbcb25: Two 10GbE links, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
= Partitions =&lt;br /&gt;
There are two partitions available to general CBCB [[SLURM]] users. You must specify one of these two partitions when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb&#039;&#039;&#039; - This is the default partition. Job allocations on all nodes except those also in the &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partition are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; - This is a partition that only allows interactive jobs; you cannot submit jobs via &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; to this partition. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Heng Huang&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Huang&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
CBCB users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions using the &amp;lt;code&amp;gt;cbcb&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;highmem&amp;lt;/code&amp;gt;: Allows for significantly increased memory to be allocated.&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;only&#039;&#039; allowed job QoS for the &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; partition is:&lt;br /&gt;
* &amp;lt;code&amp;gt;interactive&amp;lt;/code&amp;gt;: Allows for 4 CPU / 128G mem jobs up to 12 hours in length - can only be used via &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;salloc&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=cbcb&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=cbcb&amp;lt;/code&amp;gt; to be able to submit jobs to the CBCB partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexuscbcb00:~ ] $ srun --pty --ntasks=16 --mem=2000G --qos=highmem --partition=cbcb --account=cbcb --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@cbcb00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=cbcb QOS=highmem&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=cbcb AllocNode:Sid=nexuscbcb00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=cbcb00&lt;br /&gt;
   BatchHost=cbcb00&lt;br /&gt;
   NumNodes=1 NumCPUs=16 NumTasks=16 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=16,mem=2000G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=2000G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
CBCB still has its current [https://wiki.umiacs.umd.edu/cbcb-private/index.php/Storage storage] allocation in place.  All data filesystems that were available in the standalone CBCB cluster are also available in Nexus.  Please note about the change in your home directory in the migration section below.&lt;br /&gt;
&lt;br /&gt;
CBCB users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
= Operating System / Software =&lt;br /&gt;
CBCB&#039;s standalone cluster submission and compute nodes were running RHEL7.  [[Nexus]] is running a mixture of RHEL8 and RHEL9, so any software you compiled on the standalone cluster may need to be re-compiled to work correctly in this new environment.  The [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules CBCB module tree] for RHEL8+ may not yet be fully populated with RHEL8+ software.  If you do not see the modules you need, please reach out to the [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules#Contact CBCB software maintainers].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13301</id>
		<title>Nexus/CBCB</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13301"/>
		<updated>2026-07-17T17:44:59Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CBCB]]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscbcb.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
All compute nodes in CBCB-owned partitions (see below section) owned by CBCB faculty are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;. The sets of nodes are:&lt;br /&gt;
* 22 nodes that were purchased in October 2022 with center-wide funding.  They are cbcb[00-21].&lt;br /&gt;
* 4 nodes from the previous standalone CBCB cluster that moved in as of Summer 2023.  They are cbcb[22-25].&lt;br /&gt;
* 4 additional nodes purchased by Dr. Heng Huang.  They are cbcb[26-29].&lt;br /&gt;
* 1 additional node purchased by Dr. Mihai Pop.  It is cbcb30.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node (CPUs)&lt;br /&gt;
! Memory per node (type)&lt;br /&gt;
! Filesystem storage per node (type/location)&lt;br /&gt;
! GPUs per node (type)&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[00-21]&lt;br /&gt;
|22&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7313.html AMD EPYC 7313])&lt;br /&gt;
|~2TB (DDR4 3200MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~2TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|-&lt;br /&gt;
|cbcb25&lt;br /&gt;
|1&lt;br /&gt;
|24 (Dual [https://www.intel.com/content/www/us/en/products/sku/91767/intel-xeon-processor-e52650-v4-30m-cache-2-20-ghz/specifications.html Intel Xeon E5-2650 v4])&lt;br /&gt;
|~256GB (DDR4 2400MHz)&lt;br /&gt;
|~1.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|2 (1x [https://www.nvidia.com/en-gb/geforce/graphics-cards/geforce-gtx-1080-ti/specifications/ NVIDIA GeForce GTX 1080 Ti], 1x [https://www.nvidia.com/en-us/geforce/graphics-cards/compare/?section=compare-20 NVIDIA GeForce RTX 2080 Ti])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb26&lt;br /&gt;
|1&lt;br /&gt;
|128 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7763.html AMD EPYC 7763])&lt;br /&gt;
|~512GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~14TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|7 ([https://www.nvidia.com/en-us/design-visualization/rtx-a5000 NVIDIA RTX A5000])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb27&lt;br /&gt;
|1&lt;br /&gt;
|64 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7513.html AMD EPYC 7513])&lt;br /&gt;
|~256GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~3.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-a6000 NVIDIA RTX A6000])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[28-29]&lt;br /&gt;
|2&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/4th-generation-9004-and-8004-series/amd-epyc-9124.html AMD EPYC 9124])&lt;br /&gt;
|~768GB (DDR5 4800MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~7TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-6000 NVIDIA RTX 6000 Ada Generation])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb30&lt;br /&gt;
|1&lt;br /&gt;
|48 (Single [https://www.amd.com/en/products/processors/server/epyc/9005-series/amd-epyc-9475f.html AMD EPYC 9475F])&lt;br /&gt;
|~1.15TB (DDR5 6400MHz)&lt;br /&gt;
|~350GB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~10.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
!Total&lt;br /&gt;
|28&lt;br /&gt;
|1032 (various)&lt;br /&gt;
|~49TB (various)&lt;br /&gt;
|~103TB (various)&lt;br /&gt;
|33 (various)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Here is the listing of nodes as shown by the Slurm alias &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; (again, all nodes are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@nexusctl00 ~]# show_nodes | grep cbcb&lt;br /&gt;
NODELIST             CPUS       MEMORY     AVAIL_FEATURES                           GRES                             STATE&lt;br /&gt;
cbcb00               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb01               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb02               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb03               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb04               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb05               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb06               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb07               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb08               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb09               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb10               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb11               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb12               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb13               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb14               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb15               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb16               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb17               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb18               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb19               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb20               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb21               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb22               28         771245     rhel8,x86_64,Xeon,E5-2680                (null)                           idle&lt;br /&gt;
cbcb23               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb24               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb25               24         255278     rhel8,x86_64,Xeon,E5-2650,Pascal,Turing  gpu:rtx2080ti:1,gpu:gtx1080ti:1  idle&lt;br /&gt;
cbcb26               128        513243     rhel8,x86_64,Zen,EPYC-7763,Ampere        gpu:rtxa5000:7                   idle&lt;br /&gt;
cbcb27               64         255167     rhel8,x86_64,Zen,EPYC-7513,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
cbcb28               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb29               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb30               48         1157583    rhel8,x86_64,EPYC,EPYC-9475F             (null)                           idle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the CBCB partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cbcb[00-21,26-30]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via four 40GbE links, one between every combination of switches across the two pairings for redundancy, and to each other via dual 10GbE links for redundancy.&lt;br /&gt;
#* cbcb25: Two 10GbE links, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
= Partitions =&lt;br /&gt;
There are two partitions available to general CBCB [[SLURM]] users. You must specify one of these two partitions when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb&#039;&#039;&#039; - This is the default partition. Job allocations on all nodes except those also in the &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partition are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; - This is a partition that only allows interactive jobs; you cannot submit jobs via &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; to this partition. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Heng Huang&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Huang&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
CBCB users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions using the &amp;lt;code&amp;gt;cbcb&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;highmem&amp;lt;/code&amp;gt;: Allows for significantly increased memory to be allocated.&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;only&#039;&#039; allowed job QoS for the &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; partition is:&lt;br /&gt;
* &amp;lt;code&amp;gt;interactive&amp;lt;/code&amp;gt;: Allows for 4 CPU / 128G mem jobs up to 12 hours in length - can only be used via &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;salloc&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=cbcb&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=cbcb&amp;lt;/code&amp;gt; to be able to submit jobs to the CBCB partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexuscbcb00:~ ] $ srun --pty --ntasks=16 --mem=2000G --qos=highmem --partition=cbcb --account=cbcb --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@cbcb00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=cbcb QOS=highmem&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=cbcb AllocNode:Sid=nexuscbcb00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=cbcb00&lt;br /&gt;
   BatchHost=cbcb00&lt;br /&gt;
   NumNodes=1 NumCPUs=16 NumTasks=16 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=16,mem=2000G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=2000G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
CBCB still has its current [https://wiki.umiacs.umd.edu/cbcb-private/index.php/Storage storage] allocation in place.  All data filesystems that were available in the standalone CBCB cluster are also available in Nexus.  Please note about the change in your home directory in the migration section below.&lt;br /&gt;
&lt;br /&gt;
CBCB users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
= Operating System / Software =&lt;br /&gt;
CBCB&#039;s standalone cluster submission and compute nodes were running RHEL7.  [[Nexus]] is running a mixture of RHEL8 and RHEL9, so any software you compiled on the standalone cluster may need to be re-compiled to work correctly in this new environment.  The [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules CBCB module tree] for RHEL8+ may not yet be fully populated with RHEL8+ software.  If you do not see the modules you need, please reach out to the [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules#Contact CBCB software maintainers].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13300</id>
		<title>Nexus/Vulcan</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13300"/>
		<updated>2026-07-17T16:11:05Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Network */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from Vulcan&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusvulcan.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All partitions, QoSes, and account names from the standalone Vulcan cluster have been moved over to Nexus. However, please note that &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; is prepended to all of the values that were present in the standalone Vulcan cluster to distinguish them from existing values in Nexus. The lone exception is the base account that was named &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; in the standalone cluster (it is also named just &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; in Nexus).&lt;br /&gt;
&lt;br /&gt;
Here are some before/after examples of job submission with various parameters:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Standalone Vulcan cluster submission command&lt;br /&gt;
! Nexus cluster submission command&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=dpart --qos=medium --account=abhinav --gres=gpu:gtx1080ti:2 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=vulcan-dpart --qos=vulcan-medium --account=vulcan-abhinav --gres=gpu:gtx1080ti:2 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=cpu --qos=cpu --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=vulcan-cpu --qos=vulcan-cpu --account=vulcan --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=scavenger --qos=scavenger --account=vulcan --gres=gpu:4 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=vulcan-scavenger --qos=vulcan-scavenger --account=vulcan --gres=gpu:4 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Vulcan users (exclusively) can schedule non-interruptible jobs on Vulcan nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;vulcan-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all vulcan## in aggregate nodes plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;vulcan&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the Vulcan compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. Vulcan users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition (i.e., all &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs).&lt;br /&gt;
&lt;br /&gt;
==Compute Nodes==&lt;br /&gt;
There are currently 46 [[Nexus/Vulcan/GPUs | GPU nodes]] available, named vulcan[00-45], running a mixture of NVIDIA RTX A6000, NVIDIA RTX A5000, NVIDIA RTX A4000, and a number of different older generation cards. There are also 4 CPU-only nodes available, named brigid[16-19].&lt;br /&gt;
&lt;br /&gt;
All nodes are scheduled with the [[SLURM]] resource manager.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the Vulcan partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* brigid[16-17],vulcan[29-45]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* vulcan46: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of switches through several sets of intermediary switches, and to each other via dual 10GbE links for redundancy. The immediate connection to these sets of intermediary switches is via two 40GbE links to a pair of them, one between the first two switches in each pair and one between the second two switches in each pair for redundancy. This pair serves the following compute nodes:&lt;br /&gt;
#* vulcan[23-24,27-28]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all Vulcan [[Nexus/Vulcan#Scratch_Directories | scratch]], [[Nexus/Vulcan#Project_Storage | project]], and [[Nexus/Vulcan#Datasets | dataset]] allocations first connects to a pair of intermediary switches and then the first pair of switches mentioned [[Nexus/Tron#Network | here (Tron page&#039;s network section)]]. It then connects to the first pair of switches mentioned on this page through a set of four (different) intermediary switches. The last hop from the four intermediary switches to the first pair of switches mentioned on this page is via 32 100GbE links, four from each switch in the set to each switch in the first pair mentioned on this page for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general Vulcan [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed. Only nodes with GPUs from architectures older than NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] are included in this partition.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other non-scavenger-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available to subsets of Vulcan users based on specific requirements.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ampere&#039;&#039;&#039; - This partition contains nodes with GPUs from NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] or a newer architecture. Job allocations are guaranteed. Please be aware of the following restrictions on this partition:&lt;br /&gt;
*: &#039;&#039;Time limit&#039;&#039;: there is a 4 hour time limit on interactive jobs in this partition. If you need to run longer jobs, you will need to modify your workflow into a job that can be submitted as a batch script.&lt;br /&gt;
*: &#039;&#039;CPU/memory per GPU limit&#039;&#039;: there is a limit of 4 CPUs and 48G memory maximum per non-H200 GPU requested by a job, and 16 CPUs and 256G memory maximum per H200 GPU requested by a job. If you need to run jobs with more CPUs/memory, you will either need to request more GPUs in the job or use a different partition.&lt;br /&gt;
&lt;br /&gt;
: Submission is restricted to the Slurm [[#Accounts | accounts]] of the faculty who invested in these nodes:&lt;br /&gt;
:* Abhinav Shrivastava (vulcan-abhinav)&lt;br /&gt;
:* Jia-Bin Huang (vulcan-jbhuang)&lt;br /&gt;
:* Christopher Metzler (vulcan-metzler)&lt;br /&gt;
:* Ruoshi Liu (vulcan-ruoshi)&lt;br /&gt;
:* Matthias Zwicker (vulcan-zwicker)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger-multi&#039;&#039;&#039; - This partition allows multi-node jobs (up to 9 total nodes per job) and allows jobs more resources than the vulcan-scavenger partition, but only contains nodes with GTX 1080 Ti, TITAN Xp, and/or RTX 2080 Ti GPUs in them. As with vulcan-scavenger, it is preemptable when jobs in other non-scavenged-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
*: Access to this partition is on a per-use basis. Please contact Abhinav Shrivastava if you would like to be granted access to this partition.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Ramani Duraiswami&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Duraiswami&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
Vulcan has a base SLURM account &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in Vulcan compute infrastructure have an additional account provided to their sponsored accounts on the cluster.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;vulcan&#039;&#039;&#039; account.  If your faculty sponsor has their own account, it is recommended to use that account for job submission.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* vulcan-abhinav&lt;br /&gt;
* vulcan-djacobs&lt;br /&gt;
* vulcan-jbhuang&lt;br /&gt;
* vulcan-metzler&lt;br /&gt;
* vulcan-rama&lt;br /&gt;
* vulcan-ramani&lt;br /&gt;
* vulcan-ruoshi&lt;br /&gt;
* vulcan-yaser&lt;br /&gt;
* vulcan-zwicker&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
              vulcan                         vulcan     vulcan&lt;br /&gt;
      vulcan-abhinav   vulcan - abhinav shrivastava     vulcan&lt;br /&gt;
      vulcan-djacobs          vulcan - david jacobs     vulcan&lt;br /&gt;
      vulcan-jbhuang         vulcan - jia-bin huang     vulcan&lt;br /&gt;
      vulcan-metzler         vulcan - chris metzler     vulcan&lt;br /&gt;
         vulcan-rama        vulcan - rama chellappa     vulcan&lt;br /&gt;
       vulcan-ramani     vulcan - ramani duraiswami     vulcan&lt;br /&gt;
       vulcan-ruoshi            vulcan - ruoshi liu     vulcan&lt;br /&gt;
        vulcan-yaser          vulcan - yaser yacoob     vulcan&lt;br /&gt;
      vulcan-zwicker      vulcan - matthias zwicker     vulcan&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage this list of users via our [https://intranet.umiacs.umd.edu/directory/secgroup/ Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;vulcan_&amp;lt;/code&amp;gt; and then the faculty username.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command to see the accounts you are associated with.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                                              QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------------------------------------&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
   abhinav           vulcan      48                                       vulcan-cpu,vulcan-default,vulcan-medium,vulcan-scavenger&lt;br /&gt;
   abhinav   vulcan-abhinav      48                           vulcan-cpu,vulcan-default,vulcan-high,vulcan-medium,vulcan-scavenger&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. As shown below, there is a concurrent limit of 64 total GPUs for all users not in a contributing faculty group.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=vulcan format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
               vulcan                        gres/gpu=64&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
Vulcan currently has 3 QoS for the &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; partition, 1 QoS for the &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;vulcan-default&amp;lt;/code&amp;gt; QoS assuming you are using a Vulcan account.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep vulcan&lt;br /&gt;
                     Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU&lt;br /&gt;
------------------------- ----------- ------------------------------ --------- ------------------------------&lt;br /&gt;
...&lt;br /&gt;
               vulcan-cpu  2-00:00:00                cpu=1024,mem=4T         4                               &lt;br /&gt;
           vulcan-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2                               &lt;br /&gt;
            vulcan-exempt  7-00:00:00     cpu=32,gres/gpu=8,mem=256G         2                               &lt;br /&gt;
              vulcan-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2                               &lt;br /&gt;
         vulcan-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                               &lt;br /&gt;
            vulcan-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2                               &lt;br /&gt;
            vulcan-sailon  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                              gres/gpu=48&lt;br /&gt;
         vulcan-scavenger  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                                         &lt;br /&gt;
   vulcan-scavenger-multi  3-00:00:00   cpu=288,gres/gpu=72,mem=1152G                                        &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep vulcan&lt;br /&gt;
                     Name MaxSubmitPU                      MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- ------------------------------ --------------------&lt;br /&gt;
...&lt;br /&gt;
                   vulcan         500                                 cpu=1760,mem=15824G&lt;br /&gt;
            vulcan-ampere         500                                                    &lt;br /&gt;
               vulcan-cpu         500                                                    &lt;br /&gt;
            vulcan-ramani         500                                                    &lt;br /&gt;
         vulcan-scavenger         500                                                    &lt;br /&gt;
   vulcan-scavenger-multi         500                                                    &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
Vulcan has the following storage available.  Please also review UMIACS [[FilesystemDataStorage | Filesystem Data Storage]] policies including any volume that is labeled as scratch.&lt;br /&gt;
&lt;br /&gt;
Vulcan users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the Vulcan compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 300GB of scratch storage available at &amp;lt;code&amp;gt;/vulcanscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a temporary increase of up to 500GB total space for a maximum of 120 days without any faculty approval by [[HelpDesk | contacting staff]].  Once the temporary increase period is over, you will be contacted and given a one-week window of opportunity to clean and secure your data before staff will forcibly remove data to get your space back under 300GB.  If you need space beyond 500GB or for longer than 120 days, you will need faculty approval and/or a project directory.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage their data within the confine of their job and stage the data out before the end of their job.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month at 1am.  Different nodes will run the maintenance jobs on different days of the month to ensure the cluster is still highly available at all times.  Please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/vulcan-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of Vulcan datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=Vulcan here].&lt;br /&gt;
&lt;br /&gt;
===Project Storage===&lt;br /&gt;
Users within the Vulcan compute infrastructure can request project based allocations for up to 10TB for up to 180 days by [[HelpDesk | contacting staff]] with approval from the Vulcan faculty manager (Dr. Shrivastava).  These allocations will be available from &amp;lt;code&amp;gt;/fs/vulcan-projects&amp;lt;/code&amp;gt; under a name that you provide when you request the allocation.  Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 180 days (requires re-approval from Dr. Shrivastava).&lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then remove the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but the original faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and the faculty approver responding, staff will remove the allocation.&lt;br /&gt;
&lt;br /&gt;
Project storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
===Object Storage===&lt;br /&gt;
All Vulcan users can request project allocations in the [https://obj.umiacs.umd.edu/obj/help UMIACS Object Store]. Please [[HelpDesk | contact staff]] with a short project name and the amount of storage you will need to get started.&lt;br /&gt;
&lt;br /&gt;
To access this storage, you&#039;ll need to use a [[S3Clients | S3 client]] or our [[UMobj]] command line utilities.&lt;br /&gt;
&lt;br /&gt;
An example on how to use the umobj command line utilities can be found [[UMobj/Example | here]].  A full set of documentation for the utilities can be found on the [https://gitlab.umiacs.umd.edu/staff/umobj/blob/master/README.md#umobj umobj Gitlab page].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13299</id>
		<title>Nexus/Vulcan</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Vulcan&amp;diff=13299"/>
		<updated>2026-07-17T16:10:55Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from Vulcan&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusvulcan.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusvulcan01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All partitions, QoSes, and account names from the standalone Vulcan cluster have been moved over to Nexus. However, please note that &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; is prepended to all of the values that were present in the standalone Vulcan cluster to distinguish them from existing values in Nexus. The lone exception is the base account that was named &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; in the standalone cluster (it is also named just &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; in Nexus).&lt;br /&gt;
&lt;br /&gt;
Here are some before/after examples of job submission with various parameters:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Standalone Vulcan cluster submission command&lt;br /&gt;
! Nexus cluster submission command&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=dpart --qos=medium --account=abhinav --gres=gpu:gtx1080ti:2 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=vulcan-dpart --qos=vulcan-medium --account=vulcan-abhinav --gres=gpu:gtx1080ti:2 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=cpu --qos=cpu --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=vulcan-cpu --qos=vulcan-cpu --account=vulcan --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=scavenger --qos=scavenger --account=vulcan --gres=gpu:4 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=vulcan-scavenger --qos=vulcan-scavenger --account=vulcan --gres=gpu:4 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Vulcan users (exclusively) can schedule non-interruptible jobs on Vulcan nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;vulcan-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all vulcan## in aggregate nodes plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;vulcan&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the Vulcan compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. Vulcan users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition (i.e., all &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;vulcan-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs).&lt;br /&gt;
&lt;br /&gt;
==Compute Nodes==&lt;br /&gt;
There are currently 46 [[Nexus/Vulcan/GPUs | GPU nodes]] available, named vulcan[00-45], running a mixture of NVIDIA RTX A6000, NVIDIA RTX A5000, NVIDIA RTX A4000, and a number of different older generation cards. There are also 4 CPU-only nodes available, named brigid[16-19].&lt;br /&gt;
&lt;br /&gt;
All nodes are scheduled with the [[SLURM]] resource manager.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the Vulcan partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* brigid[16-17],vulcan[29-45]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* vulcan46: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of switches through several sets of intermediary switches, and to each other via dual 10GbE links for redundancy. The immediate connection to these sets of intermediary switches is via two 40GbE links to a pair of them, one between the first two switches in each pair and one between the second two switches in each pair for redundancy. This pair serves the following compute nodes:&lt;br /&gt;
#* vulcan[23,27-28]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all Vulcan [[Nexus/Vulcan#Scratch_Directories | scratch]], [[Nexus/Vulcan#Project_Storage | project]], and [[Nexus/Vulcan#Datasets | dataset]] allocations first connects to a pair of intermediary switches and then the first pair of switches mentioned [[Nexus/Tron#Network | here (Tron page&#039;s network section)]]. It then connects to the first pair of switches mentioned on this page through a set of four (different) intermediary switches. The last hop from the four intermediary switches to the first pair of switches mentioned on this page is via 32 100GbE links, four from each switch in the set to each switch in the first pair mentioned on this page for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general Vulcan [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed. Only nodes with GPUs from architectures older than NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] are included in this partition.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other non-scavenger-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available to subsets of Vulcan users based on specific requirements.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ampere&#039;&#039;&#039; - This partition contains nodes with GPUs from NVIDIA&#039;s [https://www.nvidia.com/en-us/data-center/ampere-architecture/ Ampere architecture] or a newer architecture. Job allocations are guaranteed. Please be aware of the following restrictions on this partition:&lt;br /&gt;
*: &#039;&#039;Time limit&#039;&#039;: there is a 4 hour time limit on interactive jobs in this partition. If you need to run longer jobs, you will need to modify your workflow into a job that can be submitted as a batch script.&lt;br /&gt;
*: &#039;&#039;CPU/memory per GPU limit&#039;&#039;: there is a limit of 4 CPUs and 48G memory maximum per non-H200 GPU requested by a job, and 16 CPUs and 256G memory maximum per H200 GPU requested by a job. If you need to run jobs with more CPUs/memory, you will either need to request more GPUs in the job or use a different partition.&lt;br /&gt;
&lt;br /&gt;
: Submission is restricted to the Slurm [[#Accounts | accounts]] of the faculty who invested in these nodes:&lt;br /&gt;
:* Abhinav Shrivastava (vulcan-abhinav)&lt;br /&gt;
:* Jia-Bin Huang (vulcan-jbhuang)&lt;br /&gt;
:* Christopher Metzler (vulcan-metzler)&lt;br /&gt;
:* Ruoshi Liu (vulcan-ruoshi)&lt;br /&gt;
:* Matthias Zwicker (vulcan-zwicker)&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-scavenger-multi&#039;&#039;&#039; - This partition allows multi-node jobs (up to 9 total nodes per job) and allows jobs more resources than the vulcan-scavenger partition, but only contains nodes with GTX 1080 Ti, TITAN Xp, and/or RTX 2080 Ti GPUs in them. As with vulcan-scavenger, it is preemptable when jobs in other non-scavenged-named &amp;lt;code&amp;gt;vulcan-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
*: Access to this partition is on a per-use basis. Please contact Abhinav Shrivastava if you would like to be granted access to this partition.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Ramani Duraiswami&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;vulcan-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Duraiswami&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
Vulcan has a base SLURM account &amp;lt;code&amp;gt;vulcan&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in Vulcan compute infrastructure have an additional account provided to their sponsored accounts on the cluster.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;vulcan&#039;&#039;&#039; account.  If your faculty sponsor has their own account, it is recommended to use that account for job submission.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* vulcan-abhinav&lt;br /&gt;
* vulcan-djacobs&lt;br /&gt;
* vulcan-jbhuang&lt;br /&gt;
* vulcan-metzler&lt;br /&gt;
* vulcan-rama&lt;br /&gt;
* vulcan-ramani&lt;br /&gt;
* vulcan-ruoshi&lt;br /&gt;
* vulcan-yaser&lt;br /&gt;
* vulcan-zwicker&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
              vulcan                         vulcan     vulcan&lt;br /&gt;
      vulcan-abhinav   vulcan - abhinav shrivastava     vulcan&lt;br /&gt;
      vulcan-djacobs          vulcan - david jacobs     vulcan&lt;br /&gt;
      vulcan-jbhuang         vulcan - jia-bin huang     vulcan&lt;br /&gt;
      vulcan-metzler         vulcan - chris metzler     vulcan&lt;br /&gt;
         vulcan-rama        vulcan - rama chellappa     vulcan&lt;br /&gt;
       vulcan-ramani     vulcan - ramani duraiswami     vulcan&lt;br /&gt;
       vulcan-ruoshi            vulcan - ruoshi liu     vulcan&lt;br /&gt;
        vulcan-yaser          vulcan - yaser yacoob     vulcan&lt;br /&gt;
      vulcan-zwicker      vulcan - matthias zwicker     vulcan&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage this list of users via our [https://intranet.umiacs.umd.edu/directory/secgroup/ Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;vulcan_&amp;lt;/code&amp;gt; and then the faculty username.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command to see the accounts you are associated with.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                                              QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------------------------------------&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
   abhinav           vulcan      48                                       vulcan-cpu,vulcan-default,vulcan-medium,vulcan-scavenger&lt;br /&gt;
   abhinav   vulcan-abhinav      48                           vulcan-cpu,vulcan-default,vulcan-high,vulcan-medium,vulcan-scavenger&lt;br /&gt;
       ...              ...     ...                                                                                            ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. As shown below, there is a concurrent limit of 64 total GPUs for all users not in a contributing faculty group.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=vulcan format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
               vulcan                        gres/gpu=64&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
Vulcan currently has 3 QoS for the &#039;&#039;&#039;vulcan-dpart&#039;&#039;&#039; partition, 1 QoS for the &#039;&#039;&#039;vulcan-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;vulcan-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;vulcan-default&amp;lt;/code&amp;gt; QoS assuming you are using a Vulcan account.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep vulcan&lt;br /&gt;
                     Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU&lt;br /&gt;
------------------------- ----------- ------------------------------ --------- ------------------------------&lt;br /&gt;
...&lt;br /&gt;
               vulcan-cpu  2-00:00:00                cpu=1024,mem=4T         4                               &lt;br /&gt;
           vulcan-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2                               &lt;br /&gt;
            vulcan-exempt  7-00:00:00     cpu=32,gres/gpu=8,mem=256G         2                               &lt;br /&gt;
              vulcan-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2                               &lt;br /&gt;
         vulcan-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                               &lt;br /&gt;
            vulcan-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2                               &lt;br /&gt;
            vulcan-sailon  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                              gres/gpu=48&lt;br /&gt;
         vulcan-scavenger  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                                         &lt;br /&gt;
   vulcan-scavenger-multi  3-00:00:00   cpu=288,gres/gpu=72,mem=1152G                                        &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep vulcan&lt;br /&gt;
                     Name MaxSubmitPU                      MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- ------------------------------ --------------------&lt;br /&gt;
...&lt;br /&gt;
                   vulcan         500                                 cpu=1760,mem=15824G&lt;br /&gt;
            vulcan-ampere         500                                                    &lt;br /&gt;
               vulcan-cpu         500                                                    &lt;br /&gt;
            vulcan-ramani         500                                                    &lt;br /&gt;
         vulcan-scavenger         500                                                    &lt;br /&gt;
   vulcan-scavenger-multi         500                                                    &lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
Vulcan has the following storage available.  Please also review UMIACS [[FilesystemDataStorage | Filesystem Data Storage]] policies including any volume that is labeled as scratch.&lt;br /&gt;
&lt;br /&gt;
Vulcan users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the Vulcan compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 300GB of scratch storage available at &amp;lt;code&amp;gt;/vulcanscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a temporary increase of up to 500GB total space for a maximum of 120 days without any faculty approval by [[HelpDesk | contacting staff]].  Once the temporary increase period is over, you will be contacted and given a one-week window of opportunity to clean and secure your data before staff will forcibly remove data to get your space back under 300GB.  If you need space beyond 500GB or for longer than 120 days, you will need faculty approval and/or a project directory.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage their data within the confine of their job and stage the data out before the end of their job.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month at 1am.  Different nodes will run the maintenance jobs on different days of the month to ensure the cluster is still highly available at all times.  Please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/vulcan-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of Vulcan datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=Vulcan here].&lt;br /&gt;
&lt;br /&gt;
===Project Storage===&lt;br /&gt;
Users within the Vulcan compute infrastructure can request project based allocations for up to 10TB for up to 180 days by [[HelpDesk | contacting staff]] with approval from the Vulcan faculty manager (Dr. Shrivastava).  These allocations will be available from &amp;lt;code&amp;gt;/fs/vulcan-projects&amp;lt;/code&amp;gt; under a name that you provide when you request the allocation.  Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 180 days (requires re-approval from Dr. Shrivastava).&lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then remove the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but the original faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and the faculty approver responding, staff will remove the allocation.&lt;br /&gt;
&lt;br /&gt;
Project storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
===Object Storage===&lt;br /&gt;
All Vulcan users can request project allocations in the [https://obj.umiacs.umd.edu/obj/help UMIACS Object Store]. Please [[HelpDesk | contact staff]] with a short project name and the amount of storage you will need to get started.&lt;br /&gt;
&lt;br /&gt;
To access this storage, you&#039;ll need to use a [[S3Clients | S3 client]] or our [[UMobj]] command line utilities.&lt;br /&gt;
&lt;br /&gt;
An example on how to use the umobj command line utilities can be found [[UMobj/Example | here]].  A full set of documentation for the utilities can be found on the [https://gitlab.umiacs.umd.edu/staff/umobj/blob/master/README.md#umobj umobj Gitlab page].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13298</id>
		<title>Nexus/CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13298"/>
		<updated>2026-07-17T16:10:08Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Network */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CML]]&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscml.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CML users (exclusively) can schedule non-interruptible jobs on CML nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;cml-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all cml## nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;cml&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the CML compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. CML users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition, i.e., all &amp;lt;code&amp;gt;cml-*&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the CML partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cml[17-28,30-32,34,37]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[35-36,38]: Four 100GbE links per node, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via two 100GbE links, one between the first two switches in each pair and one between the second two switches in each pair for redundancy, and to each other via dual 25GbE links for redundancy.&lt;br /&gt;
#* cml[00,02-09]: Two 25GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[10-16]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all CML [[Nexus/CML#Project_Directories | project]], [[Nexus/CML#Scratch_Directories | scratch]], [[Nexus/CML#Datasets | dataset]], and [[Nexus/CML#Models | model]] allocations also connects to the same pair of switches supporting cml[17-28,30-32] via fourteen 25GbE links, seven to each switch in the pair for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are two partitions available to general CML [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available solely to specific faculty members and their sponsored user accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-furongh&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Furong Huang&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Ramani Duraiswami&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-sfeizi&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Soheil Feizi&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is also one additional partition available to user accounts named by CML&#039;s director.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-director&#039;&#039;&#039; - This partition is for exclusive priority access to designated CML-purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
The Center has a base SLURM account &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in the cluster have an additional account provided to their sponsored accounts on the cluster, which provides a number of guaranteed billing resources corresponding to the amount that they invested.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;cml&#039;&#039;&#039; account, which only has access to the &#039;&#039;&#039;cml-default&#039;&#039;&#039; and &#039;&#039;&#039;cml-medium&#039;&#039;&#039; QoSes (see below section).&lt;br /&gt;
&lt;br /&gt;
If you need access to a different QoS, or if the &#039;&#039;&#039;cml&#039;&#039;&#039; account is at its billing limit (see below in this section), please use your faculty sponsor&#039;s account if they have one available. However, keep in mind that if you use your faculty sponsor has their own named partition (see previous section), using the faculty-specific account in the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition may block access to resources in the faculty-specific partition, since the billing limit for the account is charged regardless of what partition is being used.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* cml-abhinav&lt;br /&gt;
* cml-furongh&lt;br /&gt;
* cml-hajiagha&lt;br /&gt;
* cml-ramani&lt;br /&gt;
* cml-sfeizi&lt;br /&gt;
* cml-tokekar&lt;br /&gt;
* cml-tomg&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
                 cml                            cml        cml&lt;br /&gt;
         cml-abhinav      cml - abhinav shrivastava        cml&lt;br /&gt;
         cml-furongh             cml - furong huang        cml&lt;br /&gt;
        cml-hajiagha      cml - mohammad hajiaghayi        cml&lt;br /&gt;
          cml-ramani        cml - ramani duraiswami        cml&lt;br /&gt;
       cml-scavenger                cml - scavenger        cml&lt;br /&gt;
          cml-sfeizi             cml - soheil feizi        cml&lt;br /&gt;
         cml-tokekar           cml - pratap tokekar        cml&lt;br /&gt;
            cml-tomg            cml - tom goldstein        cml&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage the list of users that have access to their Slurm account via our [https://intranet.umiacs.umd.edu/directory/secgroup Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;cml_&amp;lt;/code&amp;gt; prepended to their UMD directory ID.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association(s). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
      tomg              cml                                                   cml-default,cml-medium&lt;br /&gt;
      tomg    cml-scavenger                                                            cml-scavenger&lt;br /&gt;
      tomg         cml-tomg                                          cml-default,cml-high,cml-medium&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. The billing number displayed here is the sum of [[SLURM/Priority#Fair-share | resource weightings]] for all nodes appropriated to that account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=cml format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
                  cml                       billing=6481&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
CML currently has 5 QoS for the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition (though &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; may not be available to all faculty accounts) and 1 QoS for the &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;cml-default&amp;lt;/code&amp;gt; QoS assuming you are using a CML account.&lt;br /&gt;
&lt;br /&gt;
If your faculty member&#039;s Slurm account does not have one or both of the &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; QoS available to it, we can add it to their account provided they approve. Please [[HelpDesk | contact staff]] if this is desired.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep cml&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU                                                                             &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------      &lt;br /&gt;
...&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep cml&lt;br /&gt;
                Name MaxSubmitPU                      MaxTRESPU              GrpTRES &lt;br /&gt;
-------------------- ----------- ------------------------------ -------------------- &lt;br /&gt;
...&lt;br /&gt;
                 cml         500                                    cpu=1128,mem=11T&lt;br /&gt;
        cml-director         500&lt;br /&gt;
         cml-furongh         500&lt;br /&gt;
       cml-scavenger         500                    gres/gpu=24&lt;br /&gt;
          cml-sfeizi         500&lt;br /&gt;
           cml-wriva         500&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
There are 3 types of user storage available to users in the CML:&lt;br /&gt;
* Home directories&lt;br /&gt;
* Project directories&lt;br /&gt;
* Scratch directories&lt;br /&gt;
&lt;br /&gt;
There are also 2 types of read-only storage available for common use among users in the CML:&lt;br /&gt;
* Dataset directories&lt;br /&gt;
* Model directories&lt;br /&gt;
&lt;br /&gt;
CML users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Project Directories===&lt;br /&gt;
You can request project based allocations for up to 6TB for up to 120 days with one or more approvals:&lt;br /&gt;
* Allocations up to and including 3TB require approval from a CML faculty member&lt;br /&gt;
* Allocations above 3TB (up to 6TB) require approval from both a CML faculty member and the [https://ml.umd.edu/#team director of CML]&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (30 days, 90 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations will be available from &#039;&#039;&#039;/fs/cml-projects&#039;&#039;&#039; under a name that you provide when you request the allocation.&lt;br /&gt;
&lt;br /&gt;
This data is backed up nightly.&lt;br /&gt;
&lt;br /&gt;
====Renewal or Retirement====&lt;br /&gt;
Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 120 days (requires re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML).  &lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then retire the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but a faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and a faculty approver responding, staff will retire the allocation.&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the CML compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 200GB of scratch storage available at &amp;lt;code&amp;gt;/cmlscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 800GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 800GB, you will need faculty approval and/or a project directory. Space increases beyond 800GB also have a maximum request period of 120 days (as with project directories), after which they will need to be renewed with re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML.&lt;br /&gt;
* As with project directories, allocations over 3TB total space require approval from the [https://ml.umd.edu/#team director of CML] in addition to your faculty member.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage data to these directories within the confines of your jobs and stage the data out before the end of your jobs.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our monthly maintenance windows.  Again, please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/cml-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of CML datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=CML here].&lt;br /&gt;
&lt;br /&gt;
===Models===&lt;br /&gt;
We have read-only model storage available at &amp;lt;code&amp;gt;/fs/cml-models&amp;lt;/code&amp;gt;.  If there are models that you would like to see downloaded and made available, please see [[Datasets | this page]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13297</id>
		<title>Nexus/CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13297"/>
		<updated>2026-07-17T16:09:57Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CML]]&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscml.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CML users (exclusively) can schedule non-interruptible jobs on CML nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;cml-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all cml## nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;cml&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the CML compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. CML users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition, i.e., all &amp;lt;code&amp;gt;cml-*&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the CML partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cml[17-28,30-32,34,37]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[35-36,38]: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via two 100GbE links, one between the first two switches in each pair and one between the second two switches in each pair for redundancy, and to each other via dual 25GbE links for redundancy.&lt;br /&gt;
#* cml[00,02-09]: Two 25GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[10-16]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all CML [[Nexus/CML#Project_Directories | project]], [[Nexus/CML#Scratch_Directories | scratch]], [[Nexus/CML#Datasets | dataset]], and [[Nexus/CML#Models | model]] allocations also connects to the same pair of switches supporting cml[17-28,30-32] via fourteen 25GbE links, seven to each switch in the pair for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are two partitions available to general CML [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available solely to specific faculty members and their sponsored user accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-furongh&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Furong Huang&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Ramani Duraiswami&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-sfeizi&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Soheil Feizi&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is also one additional partition available to user accounts named by CML&#039;s director.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-director&#039;&#039;&#039; - This partition is for exclusive priority access to designated CML-purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
The Center has a base SLURM account &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in the cluster have an additional account provided to their sponsored accounts on the cluster, which provides a number of guaranteed billing resources corresponding to the amount that they invested.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;cml&#039;&#039;&#039; account, which only has access to the &#039;&#039;&#039;cml-default&#039;&#039;&#039; and &#039;&#039;&#039;cml-medium&#039;&#039;&#039; QoSes (see below section).&lt;br /&gt;
&lt;br /&gt;
If you need access to a different QoS, or if the &#039;&#039;&#039;cml&#039;&#039;&#039; account is at its billing limit (see below in this section), please use your faculty sponsor&#039;s account if they have one available. However, keep in mind that if you use your faculty sponsor has their own named partition (see previous section), using the faculty-specific account in the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition may block access to resources in the faculty-specific partition, since the billing limit for the account is charged regardless of what partition is being used.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* cml-abhinav&lt;br /&gt;
* cml-furongh&lt;br /&gt;
* cml-hajiagha&lt;br /&gt;
* cml-ramani&lt;br /&gt;
* cml-sfeizi&lt;br /&gt;
* cml-tokekar&lt;br /&gt;
* cml-tomg&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
                 cml                            cml        cml&lt;br /&gt;
         cml-abhinav      cml - abhinav shrivastava        cml&lt;br /&gt;
         cml-furongh             cml - furong huang        cml&lt;br /&gt;
        cml-hajiagha      cml - mohammad hajiaghayi        cml&lt;br /&gt;
          cml-ramani        cml - ramani duraiswami        cml&lt;br /&gt;
       cml-scavenger                cml - scavenger        cml&lt;br /&gt;
          cml-sfeizi             cml - soheil feizi        cml&lt;br /&gt;
         cml-tokekar           cml - pratap tokekar        cml&lt;br /&gt;
            cml-tomg            cml - tom goldstein        cml&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage the list of users that have access to their Slurm account via our [https://intranet.umiacs.umd.edu/directory/secgroup Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;cml_&amp;lt;/code&amp;gt; prepended to their UMD directory ID.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association(s). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
      tomg              cml                                                   cml-default,cml-medium&lt;br /&gt;
      tomg    cml-scavenger                                                            cml-scavenger&lt;br /&gt;
      tomg         cml-tomg                                          cml-default,cml-high,cml-medium&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. The billing number displayed here is the sum of [[SLURM/Priority#Fair-share | resource weightings]] for all nodes appropriated to that account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=cml format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
                  cml                       billing=6481&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
CML currently has 5 QoS for the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition (though &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; may not be available to all faculty accounts) and 1 QoS for the &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;cml-default&amp;lt;/code&amp;gt; QoS assuming you are using a CML account.&lt;br /&gt;
&lt;br /&gt;
If your faculty member&#039;s Slurm account does not have one or both of the &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; QoS available to it, we can add it to their account provided they approve. Please [[HelpDesk | contact staff]] if this is desired.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep cml&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU                                                                             &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------      &lt;br /&gt;
...&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep cml&lt;br /&gt;
                Name MaxSubmitPU                      MaxTRESPU              GrpTRES &lt;br /&gt;
-------------------- ----------- ------------------------------ -------------------- &lt;br /&gt;
...&lt;br /&gt;
                 cml         500                                    cpu=1128,mem=11T&lt;br /&gt;
        cml-director         500&lt;br /&gt;
         cml-furongh         500&lt;br /&gt;
       cml-scavenger         500                    gres/gpu=24&lt;br /&gt;
          cml-sfeizi         500&lt;br /&gt;
           cml-wriva         500&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
There are 3 types of user storage available to users in the CML:&lt;br /&gt;
* Home directories&lt;br /&gt;
* Project directories&lt;br /&gt;
* Scratch directories&lt;br /&gt;
&lt;br /&gt;
There are also 2 types of read-only storage available for common use among users in the CML:&lt;br /&gt;
* Dataset directories&lt;br /&gt;
* Model directories&lt;br /&gt;
&lt;br /&gt;
CML users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Project Directories===&lt;br /&gt;
You can request project based allocations for up to 6TB for up to 120 days with one or more approvals:&lt;br /&gt;
* Allocations up to and including 3TB require approval from a CML faculty member&lt;br /&gt;
* Allocations above 3TB (up to 6TB) require approval from both a CML faculty member and the [https://ml.umd.edu/#team director of CML]&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (30 days, 90 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations will be available from &#039;&#039;&#039;/fs/cml-projects&#039;&#039;&#039; under a name that you provide when you request the allocation.&lt;br /&gt;
&lt;br /&gt;
This data is backed up nightly.&lt;br /&gt;
&lt;br /&gt;
====Renewal or Retirement====&lt;br /&gt;
Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 120 days (requires re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML).  &lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then retire the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but a faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and a faculty approver responding, staff will retire the allocation.&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the CML compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 200GB of scratch storage available at &amp;lt;code&amp;gt;/cmlscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 800GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 800GB, you will need faculty approval and/or a project directory. Space increases beyond 800GB also have a maximum request period of 120 days (as with project directories), after which they will need to be renewed with re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML.&lt;br /&gt;
* As with project directories, allocations over 3TB total space require approval from the [https://ml.umd.edu/#team director of CML] in addition to your faculty member.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage data to these directories within the confines of your jobs and stage the data out before the end of your jobs.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our monthly maintenance windows.  Again, please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/cml-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of CML datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=CML here].&lt;br /&gt;
&lt;br /&gt;
===Models===&lt;br /&gt;
We have read-only model storage available at &amp;lt;code&amp;gt;/fs/cml-models&amp;lt;/code&amp;gt;.  If there are models that you would like to see downloaded and made available, please see [[Datasets | this page]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus&amp;diff=13296</id>
		<title>Nexus</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus&amp;diff=13296"/>
		<updated>2026-07-17T16:09:16Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Note|UMIACS Technical Staff has begun the process of upgrading the operating system version on all Nexus cluster nodes as of 06/01/2026. Please see [[Nexus/ClusterOSUpgrade]] for more information.}}&lt;br /&gt;
&lt;br /&gt;
The Nexus is the combined scheduler of resources in UMIACS.  The resource manager for Nexus is [[SLURM]].  Resources are arranged into partitions where users are able to schedule computational jobs.  Users are arranged into a number of SLURM accounts based on faculty, lab, or center investments.&lt;br /&gt;
&lt;br /&gt;
= Getting Started =&lt;br /&gt;
All accounts in UMIACS are sponsored.  If you don&#039;t already have a UMIACS account, please see [[Accounts]] for information on getting one.  You need a full UMIACS account - not a [[Accounts/Collaborator | collaborator account]] - in order to access Nexus.&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
Your access to submission nodes (alternatively called login nodes) for Nexus computational resources is determined by your account sponsor&#039;s department, center, or lab affiliation.  You can log into the [https://intranet.umiacs.umd.edu/directory/cr/ UMIACS Directory CR application] and select the Computational Resource (CR) in the list that has the prefix &amp;lt;code&amp;gt;nexus&amp;lt;/code&amp;gt;.  The Hosts section lists your available submission nodes - generally a pair of nodes with hostnames of the format &amp;lt;tt&amp;gt;nexus&amp;lt;department, lab, or center abbreviation&amp;gt;[00,01]&amp;lt;/tt&amp;gt;, e.g., &amp;lt;tt&amp;gt;nexusgroup00&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;nexusgroup01&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Once you have identified your submission nodes, you can [[SSH]] into them [https://itsupport.umd.edu/itsupport?id=kb_article_view&amp;amp;sysparm_article=KB0016076 after connecting to UMD&#039;s GlobalProtect VPN].  From there, you are able to submit to the cluster via our [[SLURM]] workload manager.  You need to make sure that your submitted jobs have the correct account, partition, and qos.&lt;br /&gt;
&lt;br /&gt;
Please read our [[Nexus/Submission_Node_Policy|Submission Node Policy]] for guidance on appropriate usage of a submission node. If a submission node becomes unresponsive due to disregarding this policy, &amp;lt;b&amp;gt;we may kill user processes on these nodes to resolve the issue&amp;lt;/b&amp;gt;. We reserve the right to take action on users who repeatedly cause issues on submission nodes.&lt;br /&gt;
&lt;br /&gt;
== Jobs ==&lt;br /&gt;
[[SLURM]] jobs are [[SLURM/JobSubmission | submitted]] by either &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; depending if you are doing an interactive job or batch job, respectively.  You need to provide the where/how/who to run the job and specify the resources you need to run with.&lt;br /&gt;
&lt;br /&gt;
For the who/where/how, you may be required to specify &amp;lt;code&amp;gt;--account&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--partition&amp;lt;/code&amp;gt;, and/or &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; (respectively) to be able to adequately submit jobs to the Nexus.&lt;br /&gt;
&lt;br /&gt;
For resources, you may need to specify &amp;lt;code&amp;gt;--time&amp;lt;/code&amp;gt; for time, &amp;lt;code&amp;gt;--cpus-per-task&amp;lt;/code&amp;gt; for CPUs, &amp;lt;code&amp;gt;--mem&amp;lt;/code&amp;gt; for RAM, and &amp;lt;code&amp;gt;--gres=gpu&amp;lt;/code&amp;gt; for GPUs in your submission arguments to meet your requirements.  There are defaults for all four; if you don&#039;t specify something, you will get the default value for that resource, which is minimal (e.g., by default, NO GPUs are included if you do not specify &amp;lt;code&amp;gt;--gres=gpu&amp;lt;/code&amp;gt;).  For more information about submission flags for GPU resources, see [[SLURM/JobSubmission#Requesting_GPUs | here]].  You may also use &amp;lt;code&amp;gt;--ntasks&amp;lt;/code&amp;gt; to specify the number of parallel processes to run, with each task having its own set of the resources specified above. You can run &amp;lt;code&amp;gt;man srun&amp;lt;/code&amp;gt; on your submission node for a complete list of available submission arguments.&lt;br /&gt;
&lt;br /&gt;
For a list of available GPU types on Nexus and their specs, please see [[Nexus/GPUs]].&lt;br /&gt;
&lt;br /&gt;
For details on how the network for Nexus is architected, please see [[Nexus/Network]]. This can be important if you wish to optimize performance of your jobs.&lt;br /&gt;
&lt;br /&gt;
=== Interactive ===&lt;br /&gt;
Once logged into a submission node, you can run simple interactive jobs.  If your session is interrupted from the submission node, the job will be killed.  As such, we encourage use of a terminal multiplexer such as [[Tmux]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ srun --pty --cpus-per-task=4 --mem=2gb --gres=gpu:1 bash&lt;br /&gt;
srun: Job account was unset; set to user default of &#039;nexus&#039;&lt;br /&gt;
srun: Job partition was unset; set to cluster default of &#039;tron&#039;&lt;br /&gt;
srun: Job QoS was unset; set to association default of &#039;default&#039;&lt;br /&gt;
srun: Job time limit was unset; set to partition default of 60 minutes&lt;br /&gt;
srun: job 1 queued and waiting for resources&lt;br /&gt;
srun: job 1 has been allocated resources&lt;br /&gt;
$ hostname&lt;br /&gt;
tron62.umiacs.umd.edu&lt;br /&gt;
$ nvidia-smi -L&lt;br /&gt;
GPU 0: NVIDIA GeForce RTX 2080 Ti (UUID: GPU-daad6a04-a2ce-1183-ce53-b267048f750a)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Batch ===&lt;br /&gt;
Batch jobs are scheduled with a script file with an optional ability to embed job scheduling parameters via variables that are defined by &amp;lt;code&amp;gt;#SBATCH&amp;lt;/code&amp;gt; lines at the top of the file.  You can find some examples in our [[SLURM/JobSubmission]] documentation.&lt;br /&gt;
&lt;br /&gt;
= Partitions = &lt;br /&gt;
The SLURM resource manager uses partitions to act as job queues which can restrict size, time and user limits. The Nexus has a number of different partitions of resources. Different Centers, Labs, and Faculty are able to invest in computational resources that are restricted to approved users through these partitions.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by all non-[[ClassAccounts |class account]] users:&#039;&#039;&#039;&lt;br /&gt;
* [[Nexus/Tron]] - Pool of resources available to all non-class accounts sponsored by either UMIACS or CSD faculty.&lt;br /&gt;
* Scavenger - [https://slurm.schedmd.com/preempt.html Preemption] partition that contains [https://en.wikipedia.org/wiki/X86-64 x86_64] architecture nodes from multiple other partitions. More resources are available to schedule simultaneously than in other partitions, however jobs are subject to preemption rules. You are responsible for ensuring your jobs handle this preemption correctly. The SLURM scheduler will simply restart a preempted job with the same submission arguments when it is available to run again. For an overview of things you can check within scripts to determine if your job was preempted/resumed, see [[SLURM/Preemption]].&lt;br /&gt;
* Scavenger (aarch64) - Preemption partition identical in design to &amp;lt;tt&amp;gt;scavenger&amp;lt;/tt&amp;gt;, but only contains [https://en.wikipedia.org/wiki/AArch64 aarch64] architecture nodes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by [[ClassAccounts]]:&#039;&#039;&#039;&lt;br /&gt;
* [[ClassAccounts#Cluster_Usage | Class]] - Pool of resources available to class accounts sponsored by either UMIACS or CSD faculty.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by specific lab/center users:&#039;&#039;&#039;&lt;br /&gt;
* [[Nexus/CBCB]] - CBCB lab pool available for CBCB lab members.&lt;br /&gt;
* [[Nexus/CLIP]] - CLIP lab pool available for CLIP lab members.&lt;br /&gt;
* [[Nexus/CML]] - CML lab pool available for CML lab members.&lt;br /&gt;
* [[Nexus/GAMMA]] - GAMMA lab pool available for GAMMA lab members.&lt;br /&gt;
* [[Nexus/MBRC]] - MBRC lab pool available for MBRC lab members.&lt;br /&gt;
* [[Nexus/MC2]] - MC2 lab pool available for MC2 lab members.&lt;br /&gt;
* [[Nexus/QuICS]] - QuICS lab pool available for QuICS lab members.&lt;br /&gt;
* [[Nexus/Vulcan]] - Vulcan lab pool available for Vulcan lab members.&lt;br /&gt;
&lt;br /&gt;
You can view the partitions that you have access to by using the &amp;lt;code&amp;gt;show_partitions&amp;lt;/code&amp;gt; command. By default, the command will show only the partitions that are available to you.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partitions&lt;br /&gt;
                    Name           AllowAccounts                       AllowQos    MaxNodes                        Nodes&lt;br /&gt;
------------------------ ----------------------- ------------------------------ ----------- ----------------------------               &lt;br /&gt;
               scavenger               scavenger                      scavenger   UNLIMITED                brigid[16-19]                                                                                                             &lt;br /&gt;
                                                                                                             cbcb[00-29]                                                                                                             &lt;br /&gt;
                                                                                                             clip[00-13]                                                                                               &lt;br /&gt;
                                                                                               cml[00,02-13,15-28,30-33]                                                                                                     &lt;br /&gt;
                                                                                                         gammagpu[00-21]                                                                                               &lt;br /&gt;
                                                                                               legacy[00-11,13-28,30-36]                                                                                                        &lt;br /&gt;
                                                                                                        legacygpu[00-07]                                                                                                                 &lt;br /&gt;
                                                                                                                 quics00                                                                                                       &lt;br /&gt;
                                                                                                             tron[00-69]                                                                                                           &lt;br /&gt;
                                                                                                           vulcan[00-45]&lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
       scavenger-aarch64               scavenger              scavenger-aarch64   UNLIMITED                 oasis[00-39]&lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------                    &lt;br /&gt;
                    tron                   nexus                        default   UNLIMITED                  tron[00-69]                                                                           &lt;br /&gt;
                                                                           high                                                                                                                  &lt;br /&gt;
                                                                         medium                                         &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see information for all of the partitions, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_partitions --all&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partitions --all&lt;br /&gt;
                    Name           AllowAccounts                       AllowQos    MaxNodes                        Nodes&lt;br /&gt;
------------------------ ----------------------- ------------------------------ ----------- ----------------------------                    &lt;br /&gt;
                    cbcb                    cbcb                        default   UNLIMITED            cbcb[00-20,22-29]                                                                         &lt;br /&gt;
                                                                         medium                legacy[00-11,13-28,30-36]                                                                           &lt;br /&gt;
                                                                           high                                                                                                               &lt;br /&gt;
                                                                      huge-long                                                                                                                 &lt;br /&gt;
                                                                        highmem                                         &lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
               cbcb-heng               cbcb-heng                        default   UNLIMITED                  cbcb[26-29]                                                                         &lt;br /&gt;
                                                                         medium                                                                                                                     &lt;br /&gt;
                                                                           high                                                                                                               &lt;br /&gt;
                                                                      huge-long                                                                                                                 &lt;br /&gt;
                                                                        highmem                                         &lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------        &lt;br /&gt;
        cbcb-interactive                    cbcb                    interactive   UNLIMITED                       cbcb21&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Quality of Service (QoS) =&lt;br /&gt;
SLURM uses Quality of Service (QoS) both to provide limits on job sizes (termed by us as &amp;quot;job QoS&amp;quot;) as well as to limit resources used by all jobs running in a partition, either per user or per group (termed by us as &amp;quot;partition QoS&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
=== Job QoS ===&lt;br /&gt;
Job QoS are used to provide limits on the size of job that you can run. You should try to allocate only the resources your job actually needs, as resources that each of your jobs schedules are counted against your [[SLURM/Priority#Fair-share | fair-share priority]] in the future.&lt;br /&gt;
* default - Default job QoS. Limited to 4 CPU cores, 1 GPU, and 32GB RAM per job.  The maximum wall time per job is 3 days.&lt;br /&gt;
* medium - Limited to 8 CPU cores, 2 GPUs, and 64GB RAM per job.  The maximum wall time per job is 2 days.&lt;br /&gt;
* high - Limited to 16 CPU cores, 4 GPUs, and 128GB RAM per job.  The maximum wall time per job is 1 day.&lt;br /&gt;
* scavenger - No resource limits per job, only a maximum wall time per job of 3 days.  You are responsible for ensuring your job requests multiple nodes if it requests resources beyond what any one node is capable of.  11% of the total resources available for each trackable resource type in the partition (CPUs/GPUs/RAM) is permitted simultaneously across all of your jobs running with this job QoS, enforced via the corresponding partition QoS (below) for the scavenger partition.  This job QoS is paired one-to-one with the scavenger partition. To use this job QoS, include &amp;lt;code&amp;gt;--partition=scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=scavenger&amp;lt;/code&amp;gt; in your submission arguments.  Do not include any job QoS argument other than &amp;lt;code&amp;gt;--qos=scavenger&amp;lt;/code&amp;gt; (optional) or submission will fail.&lt;br /&gt;
* scavenger-aarch64 - No resource limits per job, only a maximum wall time per job of 3 days.  You are responsible for ensuring your job requests multiple nodes if it requests resources beyond what any one node is capable of.  This job QoS is paired one-to-one with the scavenger-aarch64 partition. To use this job QoS, include &amp;lt;code&amp;gt;--partition=scavenger-aarch64&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--account=scavenger&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;--qos=scavenger-aarch64&amp;lt;/code&amp;gt; in your submission arguments.&lt;br /&gt;
&lt;br /&gt;
You can display these job QoS from the command line using the &amp;lt;code&amp;gt;show_qos&amp;lt;/code&amp;gt; command.  By default, the command will only show job QoS that you can access.  The above five job QoS are the ones that everyone can access.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------ &lt;br /&gt;
             default  3-00:00:00       cpu=4,gres/gpu=1,mem=32G                                          &lt;br /&gt;
                high  1-00:00:00     cpu=16,gres/gpu=4,mem=128G                                          &lt;br /&gt;
              medium  2-00:00:00       cpu=8,gres/gpu=2,mem=64G                                          &lt;br /&gt;
           scavenger  3-00:00:00                                                                         &lt;br /&gt;
   scavenger-aarch64  3-00:00:00                                                                         &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see all job QoS, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_qos --all&amp;lt;/code&amp;gt; command. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU&lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------&lt;br /&gt;
             cml-cpu  7-00:00:00                                        8&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
             default  3-00:00:00       cpu=4,gres/gpu=1,mem=32G&lt;br /&gt;
     gamma-huge-long 10-00:00:00    cpu=32,gres/gpu=16,mem=256G&lt;br /&gt;
                high  1-00:00:00     cpu=16,gres/gpu=4,mem=128G&lt;br /&gt;
             highmem 21-00:00:00                 cpu=128,mem=2T&lt;br /&gt;
           huge-long 10-00:00:00     cpu=32,gres/gpu=8,mem=256G&lt;br /&gt;
         interactive    12:00:00                 cpu=4,mem=128G&lt;br /&gt;
              medium  2-00:00:00       cpu=8,gres/gpu=2,mem=64G&lt;br /&gt;
        oasis-exempt 10-00:00:00                                                      cpu=160,mem=28114M&lt;br /&gt;
           scavenger  3-00:00:00&lt;br /&gt;
   scavenger-aarch64  3-00:00:00&lt;br /&gt;
          vulcan-cpu  2-00:00:00                cpu=1024,mem=4T         4&lt;br /&gt;
      vulcan-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
       vulcan-exempt  7-00:00:00     cpu=32,gres/gpu=8,mem=256G         2&lt;br /&gt;
         vulcan-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
    vulcan-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
       vulcan-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       vulcan-sailon  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                              gres/gpu=48&lt;br /&gt;
    vulcan-scavenger  3-00:00:00     cpu=32,gres/gpu=8,mem=256G&lt;br /&gt;
vulcan-scavenger-mu+  3-00:00:00  cpu=288,gres/gpu=72,mem=1152G&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You are able to submit to any partition that is listed in the &amp;lt;code&amp;gt;show_partitions&amp;lt;/code&amp;gt; command. If you need to use an account other than the default account &amp;lt;tt&amp;gt;nexus&amp;lt;/tt&amp;gt;, you will need to specify it via the &amp;lt;code&amp;gt;--account&amp;lt;/code&amp;gt; submission argument.&lt;br /&gt;
&lt;br /&gt;
=== Partition QoS ===&lt;br /&gt;
Partition QoS are used to limit resources used by all jobs running in a partition, either per user (MaxTRESPU) or per group (GrpTRES).&lt;br /&gt;
&lt;br /&gt;
To view partition QoS, use the &amp;lt;code&amp;gt;show_partition_qos&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500     cpu=11%,gres/gpu=11%,mem=11%                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The scavenger_part partition QoS has relative TRES limits based on the current hardware in a given partition, represented with percentages.  To see the current actual TRES limits of this partition QoS, you can use the &amp;lt;code&amp;gt;-r/--real&amp;lt;/code&amp;gt; argument.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos -r&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500  cpu=888,gres/gpu=140,mem=12574G                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see all partition QoS, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_partition_qos --all&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
                     cbcb         500                                   cpu=1406,mem=50359G&lt;br /&gt;
                cbcb-heng         500                                                      &lt;br /&gt;
         cbcb-interactive         500                                                      &lt;br /&gt;
                    class         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
                     clip         500                                     cpu=726,mem=6939G&lt;br /&gt;
                      cml         500                                   cpu=1226,mem=12116G&lt;br /&gt;
                  cml-cpu         500                                                      &lt;br /&gt;
             cml-director         500                                                      &lt;br /&gt;
              cml-furongh         500                                                      &lt;br /&gt;
            cml-scavenger         500                      gres/gpu=24                     &lt;br /&gt;
               cml-sfeizi         500                                                      &lt;br /&gt;
                cml-wriva         500                                                      &lt;br /&gt;
           cml-wriva-high         500                                                      &lt;br /&gt;
                 csd-h200         500                                                      &lt;br /&gt;
                    gamma         500                                     cpu=906,mem=7675G&lt;br /&gt;
                     mbrc         500                                     cpu=370,mem=3571G&lt;br /&gt;
                      mc2         500                                     cpu=330,mem=3201G&lt;br /&gt;
                    oasis         500                                                      &lt;br /&gt;
                    quics         500                                     cpu=458,mem=4710G&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500     cpu=11%,gres/gpu=11%,mem=11%                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
                   vulcan         500                                   cpu=1402,mem=12936G&lt;br /&gt;
            vulcan-ampere         500                                                      &lt;br /&gt;
               vulcan-cpu         500                                                      &lt;br /&gt;
            vulcan-ramani         500                                                      &lt;br /&gt;
         vulcan-scavenger         500                                                      &lt;br /&gt;
   vulcan-scavenger-multi         500                                                      &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE&#039;&#039;&#039;: These QoS cannot be used directly when submitting jobs. Partition QoS limits apply to all jobs running on a given partition, regardless of what job QoS is used.&lt;br /&gt;
&lt;br /&gt;
For example, in the default non-preemption partition (&amp;lt;tt&amp;gt;tron&amp;lt;/tt&amp;gt;), you are restricted to 32 total CPU cores, 4 total GPUs, and 256GB total RAM at once across all jobs you have running in the partition.&lt;br /&gt;
&lt;br /&gt;
Lab/group-specific partitions may also have their own user limits, and/or may also have group limits on the total number of resources consumed simultaneously by all users that are using their partition, codified by the line in the output above that matches their lab/group name. Note that the values listed above in the two &amp;quot;TRES&amp;quot; columns are not fixed and may fluctuate per-partition as more resources are added to or removed from each partition.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;All partitions also only allow a maximum of 500 submitted (running (R) or pending (PD)) jobs per user in the partition simultaneously.&#039;&#039;&#039; This is to prevent excess pending jobs causing [https://slurm.schedmd.com/sched_config.html#backfill backfill] issues with the SLURM scheduler.&lt;br /&gt;
* If you need to submit more than 500 jobs in batch at once, you can develop and run an &amp;quot;outer submission script&amp;quot; that repeatedly attempts to run an &amp;quot;inner submission script&amp;quot; (your original submission script) to submit jobs in the batch periodically, until all job submissions are successful. The outer submission script should use looping logic to check if you are at the max job limit and should then retry submission after waiting for some time interval.&lt;br /&gt;
: An example outer submission script is as follows. In this example, &amp;lt;code&amp;gt;example_inner.sh&amp;lt;/code&amp;gt; is your inner submission script and is not an [[SLURM/ArrayJobs | array job]], and you want to run 1000 jobs. If your inner submission script is an array job, adjust the number of jobs accordingly. Array jobs must be of size 500 or less.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
numjobs=1000&lt;br /&gt;
i=0&lt;br /&gt;
while [ $i -lt $numjobs ]&lt;br /&gt;
do&lt;br /&gt;
  while [[ &amp;quot;$(sbatch example_inner.sh 2&amp;gt;&amp;amp;1)&amp;quot; =~ &amp;quot;QOSMaxSubmitJobPerUserLimit&amp;quot; ]]&lt;br /&gt;
  do&lt;br /&gt;
    echo &amp;quot;Currently at maximum job submissions allowed by the partition&#039;s QoS.&amp;quot;&lt;br /&gt;
    echo &amp;quot;Waiting for 5 minutes before trying to submit more jobs.&amp;quot;&lt;br /&gt;
    sleep 300&lt;br /&gt;
  done&lt;br /&gt;
  i=$(( $i + 1 ))&lt;br /&gt;
  echo &amp;quot;Submitted job $i of $numjobs&amp;quot;&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is suggested that you run the outer submission script in a [[Tmux]] session to keep the terminal window executing it from being interrupted.&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
All network storage available in Nexus is currently [[NFS]] based, and comes in a few different flavors. Compute nodes also have local scratch storage that can be used.&lt;br /&gt;
&lt;br /&gt;
== Home Directories ==&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
== Scratch Directories ==&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the Nexus compute infrastructure:&lt;br /&gt;
* Network scratch directories&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
Please note that [[ClassAccounts | class accounts]] do not have network scratch directories.&lt;br /&gt;
&lt;br /&gt;
=== Network Scratch Directories ===&lt;br /&gt;
You are allocated 200GB of scratch space via NFS from &amp;lt;code&amp;gt;/fs/nexus-scratch/&amp;lt;USERNAME&amp;gt;&amp;lt;/code&amp;gt; where &amp;lt;USERNAME&amp;gt; is your UMIACS username.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;[[Automounter | automounted]]&#039;&#039;&#039;; you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access it.&lt;br /&gt;
&lt;br /&gt;
You can view your quota usage by running &amp;lt;code&amp;gt;df -h /fs/nexus-scratch/&amp;lt;USERNAME&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 400GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 400GB, you will need faculty approval and/or a [[#Project_Allocations | project allocation]] for this. If you choose to increase your scratch space beyond 400GB, the increased space is also subject to the 270 TB days limit mentioned in the project allocation section before we check back in for renewal. For example, if you request 1.4TB total space, you may have this for 270 days (1TB beyond the 400GB permanent increase). The amount increased beyond 400GB will also count against your faculty member&#039;s 20TB total storage limit mentioned below.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission, data management, and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
=== Local Scratch Directories ===&lt;br /&gt;
Each computational node that you can schedule compute jobs on also has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc. and &#039;&#039;&#039;are not backed up or protected in any way.&#039;&#039;&#039;  These directories are almost always more performant than any other storage available to the job as they are mounted from disks directly attached to the compute node.  However, you must stage your data within the confines of your job and extract the relevant resultant data elsewhere before the end of your job.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our [[MonthlyMaintenanceWindow | monthly maintenance windows]].  Please make sure you secure any resultant data you wish to keep from these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
== Faculty Allocations ==&lt;br /&gt;
Each faculty member can be allocated 1TB of permanent lab space upon request.  We can also support grouping these individual allocations together into larger center, lab, or research group allocations if desired by the faculty.  Please [[HelpDesk | contact staff]] to inquire.&lt;br /&gt;
&lt;br /&gt;
Lab space storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
== Project Allocations ==&lt;br /&gt;
Project allocations are available per user for 270 TB days; you can have a 1TB allocation for up to 270 days, a 3TB allocation for 90 days, etc..&lt;br /&gt;
&lt;br /&gt;
A single faculty member can not have more than 20TB of project allocations across all of their sponsored accounts active simultaneously. Network scratch allocation space increases beyond the 400GB permanent maximum also have the increase count against this limit (i.e., a 1TB network scratch allocation would have 600GB counted towards this limit).&lt;br /&gt;
&lt;br /&gt;
Project storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
The maximum allocation length you can request is 540 days (500GB space) and the maximum storage space you can request is 9TB (30 day length).&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (270 days, 135 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations are available via &amp;lt;code&amp;gt;/fs/nexus-projects/&amp;lt;project name&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;Renewal is not guaranteed to be available due to limits on the amount of total storage.&#039;&#039;&#039;  Near the end of the allocation period, staff will contact you and ask if you are still in need of the storage allocation.  If renewal is available, you can renew for up to another 270 TB days with reapproval from the original faculty approver.&lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then remove the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but the original faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and the faculty approver responding, staff will remove the allocation.&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/nexus-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of Nexus datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=Nexus here].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=SLURM/JobSubmission&amp;diff=13295</id>
		<title>SLURM/JobSubmission</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=SLURM/JobSubmission&amp;diff=13295"/>
		<updated>2026-07-17T16:07:43Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Job Submission=&lt;br /&gt;
SLURM offers a variety of ways to run jobs. It is important to understand the different options available and how to request the resources required for a job in order for it to run successfully. All job submission should be done from submit nodes; any computational code should be run in a job allocation on compute nodes. The following commands outline how to allocate resources on the compute nodes and submit processes to be run on the allocated nodes.&lt;br /&gt;
&lt;br /&gt;
The cluster that everyone with a [[Accounts#UMIACS_Account | UMIACS account]] has access to is [[Nexus]]. Please visit the Nexus page for instructions on how to connect to your assigned submit nodes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Computationally intensive processes run on submission nodes will be terminated. Please submit jobs to be scheduled on compute nodes for this purpose.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For details on how SLURM decides how to schedule jobs when multiple jobs are waiting in a scheduler&#039;s queue, please see [[SLURM/Priority]].&lt;br /&gt;
&lt;br /&gt;
==srun==&lt;br /&gt;
The &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; command is used to run a process on the compute nodes in the cluster. If you pass it a normal shell command (or command that executes a script), it will submit a job to run that shell command/script on a compute node and then return. &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; accepts many command line options to specify the resources required by the command passed to it. Some common command line arguments are listed below and full documentation of all available options is available in the man page for &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt;, which can be accessed by running &amp;lt;code&amp;gt;man srun&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ srun --qos=default --mem=100mb --time=1:00:00 bash -c &#039;echo &amp;quot;Hello World from&amp;quot; `hostname`&#039;&lt;br /&gt;
Hello World from tron33.umiacs.umd.edu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is important to understand that &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; is an interactive command. By default input to &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; is broadcast to all compute nodes running your process and output from the compute nodes is redirected to &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt;. This behavior can be changed; however, &#039;&#039;&#039;srun will always wait for the command passed to finish before exiting, so if you start a long running process and end your terminal session, your process will stop running on the compute nodes and your job will end&#039;&#039;&#039;. To run a non-interactive submission that will remain running after you logout, you will need to wrap your &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; commands in a batch script and submit it with [[#sbatch | sbatch]].&lt;br /&gt;
&lt;br /&gt;
===Common srun Arguments===&lt;br /&gt;
* &amp;lt;code&amp;gt;--job-name=&amp;lt;JOBNAME&amp;gt;&amp;lt;/code&amp;gt; &#039;&#039;Requests your job be named &amp;lt;JOBNAME&amp;gt;&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--mem=1g&amp;lt;/code&amp;gt; &#039;&#039;Requests 1GB of memory for your job, if no unit is given MB is assumed&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--ntasks=2&amp;lt;/code&amp;gt; &#039;&#039;Requests 2 &amp;quot;tasks&amp;quot; which map to cores on a CPU for your job; if passed to srun, runs the given command concurrently on each core&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--cpus-per-task=2&amp;lt;/code&amp;gt; &#039;&#039;Requests 2 CPU cores be allocated per task for your job&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--nodes=2&amp;lt;/code&amp;gt; &#039;&#039;Requests 2 nodes be allocated to your job; if passed to srun, runs the given command concurrently on each node&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--nodelist=&amp;lt;NODENAME&amp;gt;&amp;lt;/code&amp;gt; &#039;&#039;Requests to run your job on the &amp;lt;NODENAME&amp;gt; node&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--time=dd-hh:mm:ss&amp;lt;/code&amp;gt; &#039;&#039;Requests your job run for dd days, hh hours, mm minutes, and ss seconds&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--error=&amp;lt;ERRNAME&amp;gt;&amp;lt;/code&amp;gt; &#039;&#039;Redirects stderr for your job to the &amp;lt;ERRNAME&amp;gt; file&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--partition=&amp;lt;PARTITIONNAME&amp;gt;&amp;lt;/code&amp;gt; &#039;&#039;Requests your job run in the &amp;lt;PARTITIONNAME&amp;gt; partition&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--qos=&amp;lt;QOSNAME&amp;gt;default&amp;lt;/code&amp;gt; &#039;&#039;Requests your job run with the &amp;lt;QOSNAME&amp;gt; QOS, to see the available QOS options on a cluster, run&#039;&#039; &amp;lt;code&amp;gt;show_qos&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;--account=&amp;lt;ACCOUNTNAME&amp;gt;&amp;lt;/code&amp;gt; &#039;&#039;Requests your job runs under the &amp;lt;ACCOUNTNAME&amp;gt; Slurm account, different accounts have different available partitions/QOS&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--output=&amp;lt;OUTNAME&amp;gt;&amp;lt;/code&amp;gt; &#039;&#039;Redirects stdout for your job to the &amp;lt;OUTNAME&amp;gt; file&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--requeue&amp;lt;/code&amp;gt; &#039;&#039;Requests your job be automatically requeued if it is preempted&#039;&#039;&lt;br /&gt;
* &amp;lt;code&amp;gt;--exclusive&amp;lt;/code&amp;gt; &#039;&#039;Requests your job be the only one running on the node(s) it is assigned to. This requires that your job be allocated all of the resources on the node(s). The scheduler &#039;&#039;&#039;does not&#039;&#039;&#039; automatically give your job all of the node&#039;s/nodes&#039; resources, however, so if you need more than the default, you still need to request these with&#039;&#039; &amp;lt;code&amp;gt;--ntasks&amp;lt;/code&amp;gt; &#039;&#039;and&#039;&#039; &amp;lt;code&amp;gt;--mem&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Interactive Shell Sessions===&lt;br /&gt;
An interactive shell session on a compute node can be useful for debugging or developing code that isn&#039;t ready to be run as a batch job. To get an interactive shell on a node, use &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; with the &amp;lt;code&amp;gt;--pty&amp;lt;/code&amp;gt; argument to invoke a shell:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ srun --pty --qos=default --mem=1g --time=01:00:00 bash&lt;br /&gt;
$ hostname&lt;br /&gt;
tron33.umiacs.umd.edu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Please do not leave interactive shells running for long periods of time when you are not working. This blocks resources from being used by everyone else.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==salloc==&lt;br /&gt;
The &amp;lt;code&amp;gt;salloc&amp;lt;/code&amp;gt; command can also be used to request resources be allocated without needing a batch script. Running salloc with a list of resources will allocate the resources you requested, create a job, and drop you into a subshell with the environment variables necessary to run commands in the newly created job allocation. When your time is up or you exit the subshell, your job allocation will be relinquished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ salloc --qos=default -N 1 --mem=2g --time=01:00:00&lt;br /&gt;
salloc: Granted job allocation 159&lt;br /&gt;
$ srun /usr/bin/hostname&lt;br /&gt;
tron33.umiacs.umd.edu&lt;br /&gt;
$ exit&lt;br /&gt;
exit&lt;br /&gt;
salloc: Relinquishing job allocation 159&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Please note that any commands not invoked with srun will be run locally on the submit node. Please be careful when using salloc.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==sbatch==&lt;br /&gt;
The &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; command allows you to write a batch script to be submitted and run non-interactively on the compute nodes. To run a simple Hello World command on the compute nodes you could write a file, helloWorld.sh with the following contents:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
srun bash -c &#039;echo Hello World from `hostname`&#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then you need to submit the script with sbatch and request resources:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sbatch --qos=default --mem=1g --time=1:00:00 helloWorld.sh&lt;br /&gt;
Submitted batch job 121&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SLURM will return a job number that you can use to check the status of your job with squeue:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ squeue&lt;br /&gt;
             JOBID PARTITION     NAME     USER ST       TIME  NODES NODELIST(REASON)&lt;br /&gt;
               121      tron helloWor username  R       0:01      1 tron32&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Advanced Batch Scripts====&lt;br /&gt;
You can also write a batch script with all of your resources/options defined in the script itself. This is useful for jobs that need to be run tens/hundreds/thousands of times. You can then handle any necessary environment setup and run commands on the resources you requested by invoking commands with srun. The srun commands can also be more complex and be told to only use portions of your entire job allocation - each of these distinct srun commands makes up one &amp;quot;job step&amp;quot;. The batch script will be run on the first node allocated as part of your job allocation and each job step will be run on whatever resources you tell them to.&lt;br /&gt;
&lt;br /&gt;
In the following example, we have a batch job that will request 2 nodes in the cluster. We then load a specific version of [[Python]] into our environment and submit two job steps, each one using one node. Since srun blocks until the command finishes by default, we use the &#039;&amp;amp;&#039; operator to background the process so that both job steps can run at once; however, this means that we then need to use the wait command to block processing until all background processes have finished.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
&lt;br /&gt;
# Lines that begin with #SBATCH specify commands to be used by SLURM for scheduling. These MUST be above any non-#SBATCH lines in the script to take effect.&lt;br /&gt;
&lt;br /&gt;
#SBATCH --job-name=helloWorld                                        # set job name&lt;br /&gt;
#SBATCH --output=helloWorld.out.%j                                   # indicates a file to redirect STDOUT to; %j is the jobid. If set, must be set to a file instead of a directory or else submission will fail.&lt;br /&gt;
#SBATCH --error=helloWorld.err.%j                                    # indicates a file to redirect STDERR to; %j is the jobid. If set, must be set to a file instead of a directory or else submission will fail.&lt;br /&gt;
#SBATCH --time=00:05:00                                              # how long you would like your job to run; format=dd-hh:mm:ss&lt;br /&gt;
#SBATCH --account=nexus                                              # set account, this determines which partitions and QOSes are available for your job&lt;br /&gt;
#SBATCH --partition=tron                                             # set partition, this determines what nodes are available for your job&lt;br /&gt;
#SBATCH --qos=default                                                # set QOS, this determines how many resources can be requested within your job, and for how long&lt;br /&gt;
#SBATCH --nodes=2                                                    # number of nodes to allocate for your job&lt;br /&gt;
#SBATCH --ntasks=4                                                   # request 4 cpu cores be reserved for your job total&lt;br /&gt;
#SBATCH --ntasks-per-node=2                                          # request 2 cpu cores be reserved per node&lt;br /&gt;
#SBATCH --mem=1g                                                     # memory required by job; if unit is not specified MB will be assumed. for multi-node jobs, this argument allocates this much memory *per node*&lt;br /&gt;
&lt;br /&gt;
srun --nodes=1 --mem=512m bash -c &amp;quot;hostname; python3 --version&amp;quot; &amp;amp;    # use srun to invoke commands within your job; using an &#039;&amp;amp;&#039;&lt;br /&gt;
srun --nodes=1 --mem=512m bash -c &amp;quot;hostname; python3 --version&amp;quot; &amp;amp;    # will background the process allowing them to run concurrently&lt;br /&gt;
wait                                                                 # wait for any background processes to complete&lt;br /&gt;
&lt;br /&gt;
# Once the end of the batch script is reached, your job allocation will be revoked.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Another useful thing to know is that you can pass additional arguments into your sbatch scripts on the command line and reference them as &amp;lt;code&amp;gt;${1}&amp;lt;/code&amp;gt; for the first argument and so on.&lt;br /&gt;
&lt;br /&gt;
====More Examples====&lt;br /&gt;
* [[SLURM/ArrayJobs]]&lt;br /&gt;
&lt;br /&gt;
==scancel==&lt;br /&gt;
The &amp;lt;code&amp;gt;scancel&amp;lt;/code&amp;gt; command can be used to cancel your own job allocations or job steps that are no longer needed. It can be passed individual job IDs or an option to delete all of your jobs or jobs that meet certain criteria.&lt;br /&gt;
*&amp;lt;code&amp;gt;scancel 255&amp;lt;/code&amp;gt;     &#039;&#039;cancel job 255&#039;&#039;&lt;br /&gt;
*&amp;lt;code&amp;gt;scancel 255.3&amp;lt;/code&amp;gt;     &#039;&#039;cancel job step 3 of job 255&#039;&#039;&lt;br /&gt;
*&amp;lt;code&amp;gt;scancel --user=username --partition=tron&amp;lt;/code&amp;gt;    &#039;&#039;cancel all jobs for username in the tron partition; username must be your UMD directory ID&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=Identifying Resources and Features=&lt;br /&gt;
The &amp;lt;code&amp;gt;sinfo&amp;lt;/code&amp;gt; command can show you additional features of nodes in the cluster but you need to ask it to show some non-default options using a command like &amp;lt;code&amp;gt;sinfo -o &amp;quot;%40N %8c %8m %35f %35G&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sinfo -o &amp;quot;%40N %10c %10m %40f %32G&amp;quot;&lt;br /&gt;
NODELIST                                 CPUS       MEMORY     AVAIL_FEATURES                           GRES&lt;br /&gt;
cbcb[00-21]                              32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)&lt;br /&gt;
cbcb22,legacy20                          24+        384270+    rhel8,x86_64,Xeon,E5-2680                (null)&lt;br /&gt;
cbcb26                                   128        513243     rhel8,x86_64,Zen,EPYC-7763,Ampere        gpu:rtxa5000:7&lt;br /&gt;
cbcb27                                   64         255167     rhel8,x86_64,Zen,EPYC-7513,Ampere        gpu:rtxa6000:8&lt;br /&gt;
cbcb[28-29]                              32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8&lt;br /&gt;
legacy00                                 48         125940     rhel8,x86_64,Zen,EPYC-7402               (null)&lt;br /&gt;
cbcb[23-24],legacy[34-35],twist05        24         255150     rhel8,x86_64,Xeon,E5-2650                (null)&lt;br /&gt;
cbcb25                                   24         255278     rhel8,x86_64,Xeon,E5-2650,Pascal,Turing  gpu:rtx2080ti:1,gpu:gtx1080ti:1&lt;br /&gt;
legacy[01-11,13-19,22-28,30]             12+        61804+     rhel8,x86_64,Xeon,E5-2620                (null)&lt;br /&gt;
legacy21                                 8          61746      rhel8,x86_64,Xeon,E5-2623                (null)&lt;br /&gt;
legacy31                                 8          61727      rhel8,x86_64,Xeon,E5-1660                (null)&lt;br /&gt;
tron[46-61]                              48         255232     rhel8,x86_64,Zen,EPYC-7352,Ampere        gpu:rtxa5000:8&lt;br /&gt;
tron[06-09,12-15,21]                     16         126214+    rhel8,x86_64,Zen,EPYC-7302P,Ampere       gpu:rtxa4000:4&lt;br /&gt;
tron[10-11,16-20,34]                     16         126217     rhel8,x86_64,Zen,EPYC-7313P,Ampere       gpu:rtxa4000:4&lt;br /&gt;
tron[22-33,35-44]                        16         126214+    rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtxa4000:4&lt;br /&gt;
clip13,cml30,vulcan[29-30,32,45]         32         255218+    rhel8,x86_64,Zen,EPYC-7313,Ampere        gpu:rtxa6000:8&lt;br /&gt;
cml[17-28],gammagpu05                    32         255225+    rhel8,x86_64,Zen,EPYC-7282,Ampere        gpu:rtxa4000:8&lt;br /&gt;
cml12                                    32         383038     rhel8,x86_64,Xeon,4216,Turing,Ampere     gpu:rtx2080ti:7,gpu:rtxa4000:1&lt;br /&gt;
cml31                                    32         384094     rhel8,x86_64,Zen,EPYC-9124,Ampere,Hopper gpu:a100:1,gpu:h100-nvl:1&lt;br /&gt;
cml32                                    64         512999     rhel8,x86_64,Zen,EPYC-7543,Ampere        gpu:a100:4&lt;br /&gt;
cml33                                    64         1029019    rhel8,x86_64,Xeon,6448Y,Hopper           gpu:h100-sxm:4&lt;br /&gt;
cml[00,15-16]                            32         351530+    rhel8,x86_64,Xeon,4216,Turing            gpu:rtx2080ti:7&lt;br /&gt;
cml01                                    32         383030     rhel8,x86_64,Xeon,4216,Turing            gpu:rtx2080ti:6&lt;br /&gt;
cml[02-11,13],tron[62-63,65-66,68-69]    32         351770+    rhel8,x86_64,Xeon,4216,Turing            gpu:rtx2080ti:8&lt;br /&gt;
clip12,gammagpu[10-17]                   16         126203+    rhel8,x86_64,Zen,EPYC-7313,Ampere        gpu:rtxa6000:4&lt;br /&gt;
gammagpu[18-21]                          32         254883     rhel8,x86_64,Xeon,6526Y,Ada              gpu:l40s:4&lt;br /&gt;
gammagpu00                               32         255233     rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtxa5000:8&lt;br /&gt;
legacygpu06                              20         255249     rhel8,x86_64,Xeon,E5-2699,Maxwell        gpu:gtxtitanx:4&lt;br /&gt;
legacygpu[01-02,07]                      20         255249+    rhel8,x86_64,Xeon,E5-2650,Maxwell        gpu:gtxtitanx:4&lt;br /&gt;
legacygpu05                              44         513193     rhel8,x86_64,Xeon,E5-2699,Pascal         gpu:gtx1080ti:4&lt;br /&gt;
legacygpu00                              20         255249     rhel8,x86_64,Xeon,E5-2650,Pascal         gpu:titanxp:4&lt;br /&gt;
legacygpu[03-04]                         16         255268     rhel8,x86_64,Xeon,E5-2630,Maxwell        gpu:gtxtitanx:2&lt;br /&gt;
mbrc[00-01]                              20         189498     rhel8,x86_64,Xeon,4114,Turing            gpu:rtx2080ti:8&lt;br /&gt;
clip03                                   20         126243     rhel8,x86_64,Xeon,E5-2630,Pascal,Turing  gpu:rtx2080ti:1,gpu:gtx1080ti:2&lt;br /&gt;
clip04                                   32         255233     rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtx3090:4&lt;br /&gt;
clip[05-06]                              24         126216     rhel8,x86_64,Zen,EPYC-7352,Ampere        gpu:rtxa6000:2&lt;br /&gt;
clip09                                   32         383043     rhel8,x86_64,Xeon,6130,Pascal,Turing     gpu:rtx2080ti:5,gpu:gtx1080ti:3&lt;br /&gt;
clip10                                   44         1029404    rhel8,x86_64,Xeon,E5-2699                (null)&lt;br /&gt;
clip11                                   16         126217     rhel8,x86_64,Zen,EPYC-7313,Ampere        gpu:rtxa4000:4&lt;br /&gt;
quics00                                  128        1545009    rhel8,x86_64,Zen,EPYC-9534               (null)&lt;br /&gt;
tron00                                   32         255233     rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtxa6000:6&lt;br /&gt;
tron[01-03,05]                           32         255233     rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtxa6000:8&lt;br /&gt;
tron04                                   32         255233     rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtxa6000:7&lt;br /&gt;
tron[64,67]                              32         383028+    rhel8,x86_64,Xeon,4216,Turing,Ampere     gpu:rtx2080ti:7,gpu:rtx3070:1&lt;br /&gt;
clip00                                   32         255276     rhel8,x86_64,Xeon,E5-2683,Pascal         gpu:titanxpascal:3&lt;br /&gt;
clip01                                   32         255276     rhel8,x86_64,Xeon,E5-2683,Pascal         gpu:titanxpascal:1,gpu:titanxp:2&lt;br /&gt;
clip02                                   20         126255     rhel8,x86_64,Xeon,E5-2630,Pascal         gpu:gtx1080ti:3&lt;br /&gt;
clip07                                   8          255263     rhel8,x86_64,Xeon,E5-2623,Pascal         gpu:gtx1080ti:3&lt;br /&gt;
oasis[00-39]                             160        28114      rhel9,aarch64,Altra,Altra-80             (null)&lt;br /&gt;
vulcan24                                 16         126216     rhel8,x86_64,Zen,EPYC-7282,Ampere        gpu:rtxa6000:4&lt;br /&gt;
gammagpu[01-04,06-07,09],vulcan[33-37]   32         255215+    rhel8,x86_64,Zen,EPYC-7313,Ampere        gpu:rtxa5000:8&lt;br /&gt;
vulcan[38-44]                            32         255215     rhel8,x86_64,Zen,EPYC-7313,Ampere        gpu:rtxa4000:8&lt;br /&gt;
brigid[16-17]                            48         512897     rhel8,x86_64,Zen,EPYC-7443               (null)&lt;br /&gt;
vulcan23                                 32         383030     rhel8,x86_64,Xeon,4612,Turing            gpu:rtx2080ti:8&lt;br /&gt;
vulcan[27-28]                            56         770093     rhel8,x86_64,Xeon,8280,Turing            gpu:rtx2080ti:10&lt;br /&gt;
brigid[18-19]                            20         61739      rhel8,x86_64,Xeon,E5-2640                (null)&lt;br /&gt;
vulcan00                                 32         255259     rhel8,x86_64,Xeon,E5-2683,Pascal         gpu:p6000:7,gpu:p100:1&lt;br /&gt;
vulcan[01-02,04,06-07]                   32         255259     rhel8,x86_64,Xeon,E5-2683,Pascal         gpu:p6000:8&lt;br /&gt;
vulcan[03,05]                            32         255259     rhel8,x86_64,Xeon,E5-2683,Pascal         gpu:p6000:7&lt;br /&gt;
clip08,vulcan[08-16,18,20-22,25]         32         255258+    rhel8,x86_64,Xeon,E5-2683,Pascal         gpu:gtx1080ti:8&lt;br /&gt;
vulcan[17,19]                            32         255259     rhel8,x86_64,Xeon,E5-2683,Pascal         gpu:gtx1080ti:7&lt;br /&gt;
vulcan26                                 24         770126     rhel8,x86_64,Xeon,6146,Pascal            gpu:titanxp:10&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that all of the nodes shown by this may not necessarily be in a partition you are able to submit to.&lt;br /&gt;
&lt;br /&gt;
You can identify further specific information about a node using [[SLURM/ClusterStatus#scontrol | scontrol]] with various flags.&lt;br /&gt;
&lt;br /&gt;
There are also two command aliases developed by UMIACS staff to show various node information in aggregate. They are &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;show_available_nodes&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==show_nodes==&lt;br /&gt;
The &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; command alias shows each node&#039;s name, number of CPUs, memory, {OS, CPU architecture, CPU type, GPU architecture (if the node has GPUs)} (as AVAIL_FEATURES), GRES (GPUs), and State. It essentially wraps the &amp;lt;tt&amp;gt;sinfo&amp;lt;/tt&amp;gt; command with some pre-determined output format options and shows each node on its own line, in alphabetical order.&lt;br /&gt;
&lt;br /&gt;
To only view nodes in a specific partition, append &amp;lt;code&amp;gt;-p &amp;lt;partition name&amp;gt;&amp;lt;/code&amp;gt; to the command alias.&lt;br /&gt;
&lt;br /&gt;
===Examples===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_nodes&lt;br /&gt;
NODELIST             CPUS       MEMORY     AVAIL_FEATURES                           GRES                             STATE&lt;br /&gt;
brigid16             48         512897     rhel8,x86_64,Zen,EPYC-7443               (null)                           idle&lt;br /&gt;
brigid17             48         512897     rhel8,x86_64,Zen,EPYC-7443               (null)                           idle&lt;br /&gt;
...                  ...        ...        ...                                      ...                              ...&lt;br /&gt;
vulcan45             32         513250     rhel8,x86_64,Zen,EPYC-7313,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(specific partition)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_nodes -p tron&lt;br /&gt;
NODELIST             CPUS       MEMORY     AVAIL_FEATURES                           GRES                             STATE&lt;br /&gt;
tron00               32         255233     rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
tron01               32         255233     rhel8,x86_64,Zen,EPYC-7302,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
...                  ...        ...        ...                                      ...                              ...&lt;br /&gt;
tron69               32         383030     rhel8,x86_64,Xeon,4216,Turing            gpu:rtx2080ti:8                  idle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==show_available_nodes==&lt;br /&gt;
The &amp;lt;code&amp;gt;show_available_nodes&amp;lt;/code&amp;gt; command alias takes zero or more arguments that correspond to Slurm constructs, resources, or features that you are looking to request a job with and tells you what nodes could &#039;&#039;&#039;theoretically&#039;&#039;&#039;[0,1] run a job with these arguments immediately. It assumes your job is a single-node job.&lt;br /&gt;
&lt;br /&gt;
These arguments are:&lt;br /&gt;
* &amp;lt;code&amp;gt;--partition&amp;lt;/code&amp;gt;: Only include nodes in the specified partition(s).&lt;br /&gt;
* &amp;lt;code&amp;gt;--account&amp;lt;/code&amp;gt;: Only include nodes from partitions that can use the specified account(s).&lt;br /&gt;
* &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt;: Only include nodes from partitions that can use the specified QoS(es).&lt;br /&gt;
* &amp;lt;code&amp;gt;--cpus&amp;lt;/code&amp;gt;: Only include nodes with at least this many CPUs free.&lt;br /&gt;
* &amp;lt;code&amp;gt;--mem&amp;lt;/code&amp;gt;: Only include nodes with at least this much memory free. The default unit is MB if unspecified, but any of {K,M,G,T} can be suffixed to the number provided (will then be interpreted as KB, MB, GB, or TB, respectively).&lt;br /&gt;
* GRES-related arguments:&lt;br /&gt;
** &amp;lt;code&amp;gt;--gres&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--and-gres&amp;lt;/code&amp;gt;: Only include nodes whose list of GRES contains &#039;&#039;all&#039;&#039; of the specified GRES type/quantity pairings.&lt;br /&gt;
** &amp;lt;code&amp;gt;--or-gres&amp;lt;/code&amp;gt;: Only include nodes whose list of GRES contains &#039;&#039;any&#039;&#039; of the specified GRES type/quantity pairings. Functionally identical to &amp;lt;tt&amp;gt;--and-gres&amp;lt;/tt&amp;gt; if only one GRES type/quantity pairing is specified.&lt;br /&gt;
* GPU-related arguments:&lt;br /&gt;
** &amp;lt;code&amp;gt;--gpus&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--and-gpus&amp;lt;/code&amp;gt;: Only include nodes whose list of GPUs (a subset of GRES) contains &#039;&#039;all&#039;&#039; of the specified GPU type/quantity pairings.&lt;br /&gt;
** &amp;lt;code&amp;gt;--or-gpus&amp;lt;/code&amp;gt;: Only include nodes whose list of GPUs (a subset of GRES) contains &#039;&#039;any&#039;&#039; of the specified GPU type/quantity pairings. Functionally identical to &amp;lt;tt&amp;gt;--and-gpus&amp;lt;/tt&amp;gt; if only one GPU type/quantity pairing is specified.&lt;br /&gt;
* Feature-related arguments:&lt;br /&gt;
** &amp;lt;code&amp;gt;--feature&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--and-feature&amp;lt;/code&amp;gt;: Only include nodes whose list of features contains &#039;&#039;all&#039;&#039; of the specified feature(s).&lt;br /&gt;
** &amp;lt;code&amp;gt;--or-feature&amp;lt;/code&amp;gt;: Only include nodes whose list of features contains &#039;&#039;any&#039;&#039; of the specified feature(s). Functionally identical to &amp;lt;tt&amp;gt;--and-feature&amp;lt;/tt&amp;gt; if only one feature is specified.&lt;br /&gt;
&lt;br /&gt;
These arguments are also viewable by running &amp;lt;code&amp;gt;show_available_nodes -h&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If your passed argument set does not contain any resource-based arguments (CPUs/RAM/GRES or GPUs), a node is defined as available if it has at least 1 CPU and 1MB of RAM available.&lt;br /&gt;
&lt;br /&gt;
If there are no nodes available that meet your passed argument set, you will receive the message &amp;lt;tt&amp;gt;There are no nodes that have currently free resources that meet this argument set.&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Footnotes===&lt;br /&gt;
[0] - As of now, this command alias does not factor in resources occupied by jobs that could be preempted (based on the partition(s) passed to it, if present). This is something that we are working on implementing.&lt;br /&gt;
&lt;br /&gt;
[1] - This command alias also does not factor in jobs with higher priority values requesting more resources, in the same partition(s), blocking execution of a job submitted with the resources / other arguments checked by the command alias. This is due to the infeasibility of calculating a job&#039;s priority value before it is actually submitted.&lt;br /&gt;
&lt;br /&gt;
===Examples===&lt;br /&gt;
Show all available nodes:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_available_nodes&lt;br /&gt;
brigid17&lt;br /&gt;
  cpus=16,mem=414593M&lt;br /&gt;
brigid18&lt;br /&gt;
  cpus=8,mem=24875M&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Show nodes available in the &amp;lt;tt&amp;gt;tron&amp;lt;/tt&amp;gt; partition:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_available_nodes --partition tron&lt;br /&gt;
tron00&lt;br /&gt;
  cpus=14,mem=50433M,gres=gpu:rtxa6000:1&lt;br /&gt;
tron01&lt;br /&gt;
  cpus=10,mem=17665M,gres=gpu:rtxa6000:2&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Show nodes with one or more RTX A5000 or RTX A6000 GPUs available to the &amp;lt;tt&amp;gt;vulcan&amp;lt;/tt&amp;gt; account:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_available_nodes --account vulcan --or-gpus rtxa5000:1,rtxa6000:1&lt;br /&gt;
vulcan32&lt;br /&gt;
  cpus=16,mem=193778M,gres=gpu:rtxa6000:4&lt;br /&gt;
vulcan33&lt;br /&gt;
  cpus=15,mem=181499M,gres=gpu:rtxa5000:3&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Show nodes with 4 or more CPUs, 48G or more memory, and one or more RTX A6000 GPUs available in the &amp;lt;tt&amp;gt;scavenger&amp;lt;/tt&amp;gt; partition:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_available_nodes --partition=scavenger --cpus=4 --mem=48g --or-gpus=rtxa6000:1&lt;br /&gt;
cbcb27&lt;br /&gt;
  cpus=59,mem=218303M,gres=gpu:rtxa6000:6&lt;br /&gt;
clip06&lt;br /&gt;
  cpus=20,mem=93448M,gres=gpu:rtxa6000:1&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Show nodes with [https://en.wikipedia.org/wiki/Turing_(microarchitecture) Turing] or [https://en.wikipedia.org/wiki/Ampere_(microarchitecture) Ampere] architecture GPUs available in the &amp;lt;tt&amp;gt;scavenger&amp;lt;/tt&amp;gt; partition:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_available_nodes --partition=scavenger --or-feature=Ampere,Turing&lt;br /&gt;
cbcb25&lt;br /&gt;
  cpus=24,mem=255278M,gres=gpu:rtx2080ti:1,gpu:gtx1080ti:1&lt;br /&gt;
cbcb26&lt;br /&gt;
  cpus=127,mem=447707M,gres=gpu:rtxa5000:7&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Show nodes with [https://en.wikipedia.org/wiki/Zen_(microarchitecture) Zen] architecture CPUs and [https://en.wikipedia.org/wiki/Ampere_(microarchitecture) Ampere] architecture GPUs available in the &amp;lt;tt&amp;gt;scavenger&amp;lt;/tt&amp;gt; partition:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_available_nodes --partition=scavenger --and-feature=Zen,Ampere&lt;br /&gt;
cbcb26&lt;br /&gt;
  cpus=127,mem=447707M,gres=gpu:rtxa5000:7&lt;br /&gt;
cbcb27&lt;br /&gt;
  cpus=59,mem=218303M,gres=gpu:rtxa6000:6&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(bogus example) Attempt to show nodes available in the &amp;lt;tt&amp;gt;bogus&amp;lt;/tt&amp;gt; partition:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_available_nodes --partition=bogus&lt;br /&gt;
There are no nodes that have currently free resources that meet this argument set.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requesting GPUs=&lt;br /&gt;
If you need to do processing on a GPU, you will need to request that your job have access to GPUs just as you need to request processors or CPU cores. In SLURM, GPUs are considered &amp;quot;generic resources&amp;quot; also known as GRES. To request some number of GPUs be reserved/available for your job, you can use the flag &amp;lt;code&amp;gt;--gres=gpu:#&amp;lt;/code&amp;gt; (with the actual number of GPUs you want). If there are multiple types of GPUs available in the cluster and you need a specific type, you can provide the type option to the gres flag e.g. &amp;lt;code&amp;gt;--gres=gpu:rtxa5000:#&amp;lt;/code&amp;gt;. If you do not request a specific type of GPU, you are likely to be scheduled on an older, lower spec&#039;d GPU.&lt;br /&gt;
&lt;br /&gt;
Note that some QoSes may have limits on the number of GPUs you can request per job, so you may need to specify a different QoS to request more GPUs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ srun --pty --qos=medium --gres=gpu:2 nvidia-smi&lt;br /&gt;
...&lt;br /&gt;
Wed Mar  6 16:59:39 2024&lt;br /&gt;
+---------------------------------------------------------------------------------------+&lt;br /&gt;
| NVIDIA-SMI 535.129.03             Driver Version: 535.129.03   CUDA Version: 12.2     |&lt;br /&gt;
|-----------------------------------------+----------------------+----------------------+&lt;br /&gt;
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |&lt;br /&gt;
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |&lt;br /&gt;
|                                         |                      |               MIG M. |&lt;br /&gt;
|=========================================+======================+======================|&lt;br /&gt;
|   0  NVIDIA GeForce RTX 2080 Ti     Off | 00000000:3D:00.0 Off |                  N/A |&lt;br /&gt;
| 32%   23C    P8               1W / 250W |      0MiB / 11264MiB |      0%      Default |&lt;br /&gt;
|                                         |                      |                  N/A |&lt;br /&gt;
+-----------------------------------------+----------------------+----------------------+&lt;br /&gt;
|   1  NVIDIA GeForce RTX 2080 Ti     Off | 00000000:40:00.0 Off |                  N/A |&lt;br /&gt;
| 32%   25C    P8               1W / 250W |      0MiB / 11264MiB |      0%      Default |&lt;br /&gt;
|                                         |                      |                  N/A |&lt;br /&gt;
+-----------------------------------------+----------------------+----------------------+&lt;br /&gt;
&lt;br /&gt;
+---------------------------------------------------------------------------------------+&lt;br /&gt;
| Processes:                                                                            |&lt;br /&gt;
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |&lt;br /&gt;
|        ID   ID                                                             Usage      |&lt;br /&gt;
|=======================================================================================|&lt;br /&gt;
|  No running processes found                                                           |&lt;br /&gt;
+---------------------------------------------------------------------------------------+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please note that your job will only be able to see/access the GPUs you requested. If you only need 1 GPU, please only request 1 GPU. The others on the node (if any) will be left available for other users.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ srun --pty --gres=gpu:rtxa5000:1 nvidia-smi&lt;br /&gt;
Thu Aug 25 15:22:15 2022&lt;br /&gt;
+-----------------------------------------------------------------------------+&lt;br /&gt;
| NVIDIA-SMI 470.129.06   Driver Version: 470.129.06   CUDA Version: 11.4     |&lt;br /&gt;
|-------------------------------+----------------------+----------------------+&lt;br /&gt;
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |&lt;br /&gt;
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |&lt;br /&gt;
|                               |                      |               MIG M. |&lt;br /&gt;
|===============================+======================+======================|&lt;br /&gt;
|   0  NVIDIA RTX A5000    Off  | 00000000:01:00.0 Off |                  Off |&lt;br /&gt;
| 30%   23C    P8    20W / 230W |      0MiB / 24256MiB |      0%      Default |&lt;br /&gt;
|                               |                      |                  N/A |&lt;br /&gt;
+-------------------------------+----------------------+----------------------+&lt;br /&gt;
&lt;br /&gt;
+-----------------------------------------------------------------------------+&lt;br /&gt;
| Processes:                                                       GPU Memory |&lt;br /&gt;
|  GPU       PID  Type  Process name                               Usage      |&lt;br /&gt;
|=============================================================================|&lt;br /&gt;
|  No running processes found                                                 |&lt;br /&gt;
+-----------------------------------------------------------------------------+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As with all other flags, the &amp;lt;code&amp;gt;--gres&amp;lt;/code&amp;gt; flag may also be passed to [[#sbatch | sbatch]] and [[#salloc | salloc]] rather than directly to [[#srun | srun]].&lt;br /&gt;
&lt;br /&gt;
=MPI example=&lt;br /&gt;
To run [https://en.wikipedia.org/wiki/Message_Passing_Interface MPI] jobs, you will need to include the &amp;lt;code&amp;gt;--mpi=pmix&amp;lt;/code&amp;gt; flag in your submission arguments.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/bin/bash &lt;br /&gt;
#SBATCH --job-name=mpi_test # Job name &lt;br /&gt;
#SBATCH --nodes=4 # Number of nodes &lt;br /&gt;
#SBATCH --ntasks=8 # Number of MPI ranks &lt;br /&gt;
#SBATCH --ntasks-per-node=2 # Number of MPI ranks per node &lt;br /&gt;
#SBATCH --ntasks-per-socket=1 # Number of tasks per processor socket on the node &lt;br /&gt;
#SBATCH --time=00:30:00 # Time limit hrs:min:sec &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
srun --mpi=pmix /nfshomes/username/testing/mpi/a.out &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13294</id>
		<title>Nexus/CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13294"/>
		<updated>2026-07-16T13:06:27Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CML]]&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscml.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CML users (exclusively) can schedule non-interruptible jobs on CML nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;cml-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all cml## nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;cml&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the CML compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. CML users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition, i.e., all &amp;lt;code&amp;gt;cml-*&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the CML partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cml[17-28,30-32,34,37]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[35-36]: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via two 100GbE links, one between the first two switches in each pair and one between the second two switches in each pair for redundancy, and to each other via dual 25GbE links for redundancy.&lt;br /&gt;
#* cml[00,02-09]: Two 25GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[10-16]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all CML [[Nexus/CML#Project_Directories | project]], [[Nexus/CML#Scratch_Directories | scratch]], [[Nexus/CML#Datasets | dataset]], and [[Nexus/CML#Models | model]] allocations also connects to the same pair of switches supporting cml[17-28,30-32] via fourteen 25GbE links, seven to each switch in the pair for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are two partitions available to general CML [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available solely to specific faculty members and their sponsored user accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-furongh&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Furong Huang&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Ramani Duraiswami&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-sfeizi&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Soheil Feizi&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is also one additional partition available to user accounts named by CML&#039;s director.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-director&#039;&#039;&#039; - This partition is for exclusive priority access to designated CML-purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
The Center has a base SLURM account &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in the cluster have an additional account provided to their sponsored accounts on the cluster, which provides a number of guaranteed billing resources corresponding to the amount that they invested.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;cml&#039;&#039;&#039; account, which only has access to the &#039;&#039;&#039;cml-default&#039;&#039;&#039; and &#039;&#039;&#039;cml-medium&#039;&#039;&#039; QoSes (see below section).&lt;br /&gt;
&lt;br /&gt;
If you need access to a different QoS, or if the &#039;&#039;&#039;cml&#039;&#039;&#039; account is at its billing limit (see below in this section), please use your faculty sponsor&#039;s account if they have one available. However, keep in mind that if you use your faculty sponsor has their own named partition (see previous section), using the faculty-specific account in the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition may block access to resources in the faculty-specific partition, since the billing limit for the account is charged regardless of what partition is being used.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* cml-abhinav&lt;br /&gt;
* cml-furongh&lt;br /&gt;
* cml-hajiagha&lt;br /&gt;
* cml-ramani&lt;br /&gt;
* cml-sfeizi&lt;br /&gt;
* cml-tokekar&lt;br /&gt;
* cml-tomg&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
                 cml                            cml        cml&lt;br /&gt;
         cml-abhinav      cml - abhinav shrivastava        cml&lt;br /&gt;
         cml-furongh             cml - furong huang        cml&lt;br /&gt;
        cml-hajiagha      cml - mohammad hajiaghayi        cml&lt;br /&gt;
          cml-ramani        cml - ramani duraiswami        cml&lt;br /&gt;
       cml-scavenger                cml - scavenger        cml&lt;br /&gt;
          cml-sfeizi             cml - soheil feizi        cml&lt;br /&gt;
         cml-tokekar           cml - pratap tokekar        cml&lt;br /&gt;
            cml-tomg            cml - tom goldstein        cml&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage the list of users that have access to their Slurm account via our [https://intranet.umiacs.umd.edu/directory/secgroup Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;cml_&amp;lt;/code&amp;gt; prepended to their UMD directory ID.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association(s). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
      tomg              cml                                                   cml-default,cml-medium&lt;br /&gt;
      tomg    cml-scavenger                                                            cml-scavenger&lt;br /&gt;
      tomg         cml-tomg                                          cml-default,cml-high,cml-medium&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. The billing number displayed here is the sum of [[SLURM/Priority#Fair-share | resource weightings]] for all nodes appropriated to that account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=cml format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
                  cml                       billing=6481&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
CML currently has 5 QoS for the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition (though &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; may not be available to all faculty accounts) and 1 QoS for the &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;cml-default&amp;lt;/code&amp;gt; QoS assuming you are using a CML account.&lt;br /&gt;
&lt;br /&gt;
If your faculty member&#039;s Slurm account does not have one or both of the &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; QoS available to it, we can add it to their account provided they approve. Please [[HelpDesk | contact staff]] if this is desired.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep cml&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU                                                                             &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------      &lt;br /&gt;
...&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep cml&lt;br /&gt;
                Name MaxSubmitPU                      MaxTRESPU              GrpTRES &lt;br /&gt;
-------------------- ----------- ------------------------------ -------------------- &lt;br /&gt;
...&lt;br /&gt;
                 cml         500                                    cpu=1128,mem=11T&lt;br /&gt;
        cml-director         500&lt;br /&gt;
         cml-furongh         500&lt;br /&gt;
       cml-scavenger         500                    gres/gpu=24&lt;br /&gt;
          cml-sfeizi         500&lt;br /&gt;
           cml-wriva         500&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
There are 3 types of user storage available to users in the CML:&lt;br /&gt;
* Home directories&lt;br /&gt;
* Project directories&lt;br /&gt;
* Scratch directories&lt;br /&gt;
&lt;br /&gt;
There are also 2 types of read-only storage available for common use among users in the CML:&lt;br /&gt;
* Dataset directories&lt;br /&gt;
* Model directories&lt;br /&gt;
&lt;br /&gt;
CML users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Project Directories===&lt;br /&gt;
You can request project based allocations for up to 6TB for up to 120 days with one or more approvals:&lt;br /&gt;
* Allocations up to and including 3TB require approval from a CML faculty member&lt;br /&gt;
* Allocations above 3TB (up to 6TB) require approval from both a CML faculty member and the [https://ml.umd.edu/#team director of CML]&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (30 days, 90 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations will be available from &#039;&#039;&#039;/fs/cml-projects&#039;&#039;&#039; under a name that you provide when you request the allocation.&lt;br /&gt;
&lt;br /&gt;
This data is backed up nightly.&lt;br /&gt;
&lt;br /&gt;
====Renewal or Retirement====&lt;br /&gt;
Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 120 days (requires re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML).  &lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then retire the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but a faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and a faculty approver responding, staff will retire the allocation.&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the CML compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 200GB of scratch storage available at &amp;lt;code&amp;gt;/cmlscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 800GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 800GB, you will need faculty approval and/or a project directory. Space increases beyond 800GB also have a maximum request period of 120 days (as with project directories), after which they will need to be renewed with re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML.&lt;br /&gt;
* As with project directories, allocations over 3TB total space require approval from the [https://ml.umd.edu/#team director of CML] in addition to your faculty member.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage data to these directories within the confines of your jobs and stage the data out before the end of your jobs.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our monthly maintenance windows.  Again, please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/cml-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of CML datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=CML here].&lt;br /&gt;
&lt;br /&gt;
===Models===&lt;br /&gt;
We have read-only model storage available at &amp;lt;code&amp;gt;/fs/cml-models&amp;lt;/code&amp;gt;.  If there are models that you would like to see downloaded and made available, please see [[Datasets | this page]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=SLURM/Priority&amp;diff=13293</id>
		<title>SLURM/Priority</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=SLURM/Priority&amp;diff=13293"/>
		<updated>2026-07-10T12:57:39Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Age */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[SLURM]] at UMIACS is configured to prioritize jobs based on a number of factors, termed [https://slurm.schedmd.com/priority_multifactor.html multifactor priority] in SLURM. Each job submitted to the scheduler is assigned a priority value, which can be viewed in the output of &amp;lt;code&amp;gt;scontrol show job &amp;lt;jobid&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Example:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ scontrol show job 1&lt;br /&gt;
JobId=1 JobName=bash&lt;br /&gt;
   UserId=username(13337) GroupId=username(13337) MCS_label=N/A&lt;br /&gt;
   Priority=2000841 Nice=0 Account=nexus QOS=default&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Pending Jobs==&lt;br /&gt;
If the partition that you submit your job to cannot start your job instantly due to no compute node(s) in the partition having the resources free to run it, your job will remain in the Pending state with the listed reason &amp;lt;tt&amp;gt;(Resources)&amp;lt;/tt&amp;gt;. If there is another job already pending with this reason in a partition, you submit a job to the same partition, and your job gets assigned a lower priority value than that pending job, your job will instead remain in the Pending state with reason &amp;lt;tt&amp;gt;(Priority)&amp;lt;/tt&amp;gt;. If there are multiple jobs pending and your job is not the highest priority job pending, the scheduler will only start execution of your job if doing so would not push the start times for any higher priority jobs in the same partition further back.&lt;br /&gt;
&lt;br /&gt;
Lowering some combination of the resources you are requesting and/or the time limit may allow submitted jobs to start sooner (or instantly) during times where a partition is under resource pressure. The command &amp;lt;code&amp;gt;squeue -j &amp;lt;jobid&amp;gt; --start&amp;lt;/code&amp;gt; can be used to provide a time estimate for when your job will start, where &amp;lt;jobid&amp;gt; is the job ID you receive from either srun or sbatch. This time is subject to change depending on if other users&#039; jobs end sooner or more jobs get submitted.&lt;br /&gt;
&lt;br /&gt;
You can use the command alias &amp;lt;code&amp;gt;[[SLURM/JobSubmission#show_available_nodes | show_available_nodes]]&amp;lt;/code&amp;gt; with a variety of different submission arguments to get a better idea of what jobs may be able to start sooner, but the output of this command alias is not definitive, for reasons mentioned in the footnotes on the page linked to.&lt;br /&gt;
&lt;br /&gt;
==Priority Factors==&lt;br /&gt;
The priority factors in use at UMIACS are, from most-heavily to least-heavily weighted:&lt;br /&gt;
* Partition job was submitted to&lt;br /&gt;
* Fair-share of resources within SLURM account&lt;br /&gt;
* Age of job, i.e., time spent waiting to run in the queue&lt;br /&gt;
* Association/SLURM account being used&lt;br /&gt;
* &amp;quot;Nice&amp;quot; value that job was submitted with&lt;br /&gt;
&lt;br /&gt;
===Partition===&lt;br /&gt;
The partitions whose names are or are prefixed with &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; on our clusters are always in a lower priority tier and always have lower priority factors for their jobs than all other partitions on that cluster. As mentioned in other UMIACS cluster-specific documentation, jobs submitted to these partitions are also [https://slurm.schedmd.com/preempt.html preemptable]. These two design choices give the partitions their names; jobs submitted to &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; named or prefixed partitions &amp;quot;scavenge&amp;quot; for available resources on the cluster rather than consume dedicated resources, and are interrupted by jobs asking to consume dedicated resources.&lt;br /&gt;
&lt;br /&gt;
On [[Nexus]], labs/centers may also have their own scavenger partitions, i.e., &amp;lt;code&amp;gt;&amp;lt;labname&amp;gt;-scavenger&amp;lt;/code&amp;gt;, if the faculty for the lab/center have decided upon some sort of limit on jobs, such as number of simultaneous jobs, number of actively consumed billing resources, etc., in their non-scavenger partitions. These lab/center scavenger partitions allow for more jobs to be run by members of that lab/center on that lab&#039;s/center&#039;s nodes only, but jobs on these partitions are preemptable by jobs in that lab&#039;s/center&#039;s non-scavenger partitions and/or account-specific partitions, if any account-specific partitions containing a given node exist. Jobs submitted to lab/center scavenger partitions will preempt jobs submitted to the institute-wide scavenger partitions (running on nodes that are also in those lab/center scavenger partitions).&lt;br /&gt;
&lt;br /&gt;
In decreasing order of priority (highest first), our priority tiers for partitions are:&lt;br /&gt;
# Priority access account-specific partitions&lt;br /&gt;
# Account-specific partitions&lt;br /&gt;
# Lab/center-specific and institute-wide non-&amp;quot;scavenger&amp;quot; named partitions&lt;br /&gt;
# Lab/center-specific &amp;quot;scavenger&amp;quot; named partitions&lt;br /&gt;
# Institute-wide &amp;quot;scavenger&amp;quot; named partitions&lt;br /&gt;
&lt;br /&gt;
A job in a specific priority tier will never have a higher priority value than any job in a higher priority tier. Corresponding to the above tiers, the priority values that you will see for jobs in each tier:&lt;br /&gt;
# &amp;gt;= 4000000&lt;br /&gt;
# 3000000 to 3999999&lt;br /&gt;
# 2000000 to 2999999&lt;br /&gt;
# 1000000 to 1999999&lt;br /&gt;
# &amp;lt; 1000000&lt;br /&gt;
&lt;br /&gt;
As such, &#039;&#039;&#039;jobs on specific nodes in some non-&amp;quot;scavenger&amp;quot; named partitions may also be subject to preemption&#039;&#039;&#039; based on these priority tiers. Generally speaking, though, most nodes are only in one partition in one of the first three (non-&amp;quot;scavenger&amp;quot;) priority tiers, and then in an institute-wide &amp;quot;scavenger&amp;quot; named partition, and a lab/center-specific &amp;quot;scavenger&amp;quot; named partition, if one exists for the lab/center that a given node is a part of.&lt;br /&gt;
&lt;br /&gt;
===Fair-share===&lt;br /&gt;
The more resources your jobs have already consumed within an account, the lower priority factor your future jobs will have when compared to other users&#039; jobs in the same account who have used fewer resources (so as to &amp;quot;fair-share&amp;quot; with other users). Additionally, if there are multiple accounts that can submit to a partition, and the sum of resources used by all users&#039; jobs within account A is greater than the sum of resources used by all users&#039; jobs within account B, all future jobs from users in account A will have a lower priority factor when compared to all future jobs from users in account B. (In other words, fair-share is hierarchical.)&lt;br /&gt;
&lt;br /&gt;
You can view the various fair-share statistics with the command &amp;lt;code&amp;gt;sshare -l&amp;lt;/code&amp;gt;. It will show your specific FairShare values (always between 0.0 and 1.0) within accounts that you have access to. You can also view other accounts&#039; Level Fairshare (LevelFS).&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Account                    User  RawShares  NormShares    RawUsage   NormUsage  EffectvUsage  FairShare    LevelFS                    GrpTRESMins                    TRESRunMins&lt;br /&gt;
-------------------- ---------- ---------- ----------- ----------- ----------- ------------- ---------- ---------- ------------------------------ ------------------------------&lt;br /&gt;
root                                          0.000000 68444174744                  1.000000                                                      cpu=4797787,mem=70530109515,e+&lt;br /&gt;
 cbcb                                    1    0.028571  4454658377    0.065046      0.065046              0.439246                                cpu=452139,mem=22276633804,en+&lt;br /&gt;
 class                                   1    0.028571   255617290    0.003733      0.003733              7.652841                                cpu=7021,mem=74554606,energy=+&lt;br /&gt;
 clip                                    1    0.028571  3057933838    0.044674      0.044674              0.639549                                cpu=33214,mem=2744443460,ener+&lt;br /&gt;
 cml                                     1    0.028571    66866114    0.000975      0.000975             29.299389                                cpu=1796,mem=29426756,energy=+&lt;br /&gt;
 gamma                                   1    0.028571  2609474948    0.038129      0.038129              0.749334                                cpu=34089,mem=360373862,energ+&lt;br /&gt;
 mbrc                                    1    0.028571    73411964    0.001073      0.001073             26.635560                                cpu=1195,mem=4896358,energy=0+&lt;br /&gt;
 mc2                                     1    0.028571     2682557    0.000039      0.000039            728.919551                                cpu=0,mem=0,energy=0,node=0,b+&lt;br /&gt;
 nexus                                   1    0.028571  5472794067    0.079964      0.079964              0.357302                                cpu=278464,mem=3250599000,ene+&lt;br /&gt;
  nexus                username          1    0.000835       69666    0.000001      0.000021   0.457407  37.435501                                cpu=0,mem=0,energy=0,node=0,b+&lt;br /&gt;
 oasis                                   1    0.028571      330030    0.000005      0.000005            5.9248e+03                                cpu=0,mem=0,energy=0,node=0,b+&lt;br /&gt;
 quics                                   1    0.028571           4    0.000000      0.000000            4.1683e+08                                cpu=0,mem=0,energy=0,node=0,b+&lt;br /&gt;
 scavenger                               1    0.028571 40888195964    0.597419      0.597419              0.047825                                cpu=3142204,mem=29902903931,e+&lt;br /&gt;
  scavenger            username          1    0.000835         171    0.000000      0.000000   0.033975 9.8885e+04                                cpu=0,mem=0,energy=0,node=0,b+&lt;br /&gt;
 vulcan                                  1    0.028571  1247236491    0.018224      0.018224              1.567761                                cpu=147273,mem=1161243818,ene+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The actual resource billing weights for the three main resources (memory per GB, CPU cores, and number of GPUs if applicable) are per-partition and can be viewed in the &amp;lt;code&amp;gt;TRESBillingWeights&amp;lt;/code&amp;gt; line in the output of &amp;lt;code&amp;gt;scontrol show partition&amp;lt;/code&amp;gt;. The &amp;lt;code&amp;gt;billing&amp;lt;/code&amp;gt; value for a job is the sum of all resource weightings for resources the job has requested. This value is then multiplied by the amount of time a job has run in seconds to get the amount it contributes to the RawUsage for the association within the account it is running under.&lt;br /&gt;
&lt;br /&gt;
====Algorithm====&lt;br /&gt;
The algorithm we use for resource weightings differs depending on if there are any GPUs in a partition or not, and is as follows:&lt;br /&gt;
&lt;br /&gt;
=====GPU partitions=====&lt;br /&gt;
Each resource (memory/CPU/GPU) is given a weighting value such that their relative billings to each other within the partition are equal (33.33% each). Memory is typically always the most abundant resource by unit (weighting value of 1.0 per GB) and the CPU/GPU values are adjusted accordingly.&lt;br /&gt;
&lt;br /&gt;
Different GPU types may also be weighted differently within the GPU relative billing. A baseline GPU type is first chosen. All GPUs of that type and other types that have lower FP32 performance (in [https://en.wikipedia.org/wiki/FLOPS TFLOPS]) are given a weighting factor of 1.0. GPU types with higher FP32 performance than the baseline GPU are given a weighting factor calculated by dividing their FP32 performance by the baseline GPU&#039;s FP32 performance. The weighting values for each GPU type are then determined by normalizing the sum of all of GPU cards&#039; billing values multiplied by their weighting factors against the relative billing percentage for GPUs (33.33%).&lt;br /&gt;
&lt;br /&gt;
The current baseline GPU is the [https://www.nvidia.com/en-us/design-visualization/rtx-a4000/ NVIDIA RTX A4000].&lt;br /&gt;
&lt;br /&gt;
=====CPU-only partitions=====&lt;br /&gt;
Each resource (memory/CPU) is first given a weighting value such that their relative billings to each other within the partition are equal (50% each). Memory is typically always the most abundant resource by unit (weighting value of 1.0 per GB) and the CPU value is adjusted accordingly. The final CPU weight value is then divided by 10, which translates to roughly 90.9% of the billing weight being for memory and 9.1% being for CPU. The division of the CPU value is done so as to not affect accounts&#039; fair-share priority factors as much when running jobs in CPU-only partitions given the popularity of GPGPU computing.&lt;br /&gt;
&lt;br /&gt;
===Age===&lt;br /&gt;
The longer a job is eligible to run but cannot due to resources being unavailable or it having a lower priority value than one or more other jobs, the higher the job&#039;s priority becomes as it continues to wait in the queue. This is the only priority factor that can change a job&#039;s priority value after submission, and the priority modifier for this factor reaches its limit after 7 days.&lt;br /&gt;
&lt;br /&gt;
Jobs&#039; age priority factors on our clusters are recalculated every 5 minutes.&lt;br /&gt;
&lt;br /&gt;
===Association===&lt;br /&gt;
Some lab/center-specific SLURM accounts have priority values directly attached to them. Jobs run under these accounts gain this many extra points of priority.&lt;br /&gt;
&lt;br /&gt;
===Nice value===&lt;br /&gt;
This is a submission argument that you as the user can include when submitting your jobs to deprioritize them. Larger values will deprioritize jobs more, e.g.,&lt;br /&gt;
&amp;lt;pre&amp;gt;srun --pty --nice=2 bash&amp;lt;/pre&amp;gt;&lt;br /&gt;
will have lower priority than&lt;br /&gt;
&amp;lt;pre&amp;gt;srun --pty --nice=1 bash&amp;lt;/pre&amp;gt;&lt;br /&gt;
which will have lower priority than&lt;br /&gt;
&amp;lt;pre&amp;gt;srun --pty bash&amp;lt;/pre&amp;gt;&lt;br /&gt;
assuming all three jobs were submitted at the same time. You cannot use negative values for this argument.&lt;br /&gt;
&lt;br /&gt;
Because this value is absolute, if you want to use it, we would recommend using small numbers - one or two digits - only. Larger numbers may impact your job&#039;s ability to run at all as a result of the other factors at play.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Tron&amp;diff=13290</id>
		<title>Nexus/Tron</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Tron&amp;diff=13290"/>
		<updated>2026-07-08T17:22:08Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Tron partition is a subset of resources available in the [[Nexus]].  It was purchased using college-level funding for UMIACS and CSD faculty.&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes =&lt;br /&gt;
The partition contains 70 compute nodes with specs as detailed below.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Type&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node&lt;br /&gt;
! Memory per node&lt;br /&gt;
! GPUs per node&lt;br /&gt;
|-&lt;br /&gt;
|tron[00-05]&lt;br /&gt;
|A6000 GPU Node&lt;br /&gt;
|6&lt;br /&gt;
|32&lt;br /&gt;
|256GB&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|tron[06-45]&lt;br /&gt;
|A4000 GPU Node&lt;br /&gt;
|40&lt;br /&gt;
|16&lt;br /&gt;
|128GB&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|tron[46-61]&lt;br /&gt;
|A5000 GPU Node&lt;br /&gt;
|16&lt;br /&gt;
|48&lt;br /&gt;
|256GB&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|tron[62-69]&lt;br /&gt;
|RTX 2080 Ti GPU Node&lt;br /&gt;
|8&lt;br /&gt;
|32&lt;br /&gt;
|384GB&lt;br /&gt;
|8&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
|tron[00-69]&lt;br /&gt;
!Total&lt;br /&gt;
|70&lt;br /&gt;
|1856&lt;br /&gt;
|13410GB&lt;br /&gt;
|400&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the Tron partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* tron[00-05]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* tron[06-45]: Two 50GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* tron[46-61]: One 100GbE link per node. Half of the overall links for this set of nodes go to one switch in the pair, and the other half go to the other switch in the pair. These nodes do not have redundant links because the switches are currently at port capacity.&lt;br /&gt;
# One switch connected to the above pair of network switches via two 100GbE links, one to each switch in the pair for redundancy, serving the following compute nodes:&lt;br /&gt;
#* tron[62-69]: Two 10GbE links to the switch per node (increased bandwidth).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all Nexus [[Nexus#Scratch_Directories | scratch]], [[Nexus#Faculty_Allocations | faculty]], [[Nexus#Project_Allocations | project]], and [[Nexus#Datasets | dataset]] allocations first connects to a pair of intermediary switches before reaching the compute nodes. The last hop from the pair of intermediary switches to the first pair of switches mentioned on this page (same that nodes tron[00-61] are on) is via four 100GbE links, one for each combination of switches across each pairing, for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13289</id>
		<title>Nexus/CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13289"/>
		<updated>2026-07-08T17:16:55Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Partitions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CML]]&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscml.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CML users (exclusively) can schedule non-interruptible jobs on CML nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;cml-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all cml## nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;cml&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the CML compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. CML users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition, i.e., all &amp;lt;code&amp;gt;cml-*&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the CML partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cml[17-28,30-32,34,37]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[35-36]: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via two 100GbE links, one between the first two switches in each pair and one between the second two switches in each pair for redundancy, and to each other via dual 25GbE links for redundancy.&lt;br /&gt;
#* cml[00,02-09]: Two 25GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[10-16],cmlcpu[01-04,06-07]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all CML [[Nexus/CML#Project_Directories | project]], [[Nexus/CML#Scratch_Directories | scratch]], [[Nexus/CML#Datasets | dataset]], and [[Nexus/CML#Models | model]] allocations also connects to the same pair of switches supporting cml[17-28,30-32] via fourteen 25GbE links, seven to each switch in the pair for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general CML [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed. &#039;&#039;&#039;Please note that this partition is being permanently removed on 07/16/2026 at 9am.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available solely to specific faculty members and their sponsored user accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-furongh&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Furong Huang&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-ramani&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Ramani Duraiswami&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-sfeizi&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Soheil Feizi&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is also one additional partition available to user accounts named by CML&#039;s director.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-director&#039;&#039;&#039; - This partition is for exclusive priority access to designated CML-purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
The Center has a base SLURM account &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in the cluster have an additional account provided to their sponsored accounts on the cluster, which provides a number of guaranteed billing resources corresponding to the amount that they invested.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;cml&#039;&#039;&#039; account, which only has access to the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039;, &#039;&#039;&#039;cml-default&#039;&#039;&#039;, and &#039;&#039;&#039;cml-medium&#039;&#039;&#039; QoSes (see below section).&lt;br /&gt;
&lt;br /&gt;
If you need access to a different QoS, or if the &#039;&#039;&#039;cml&#039;&#039;&#039; account is at its billing limit (see below in this section), please use your faculty sponsor&#039;s account if they have one available. However, keep in mind that if you use your faculty sponsor has their own named partition (see previous section), using the faculty-specific account in the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition may block access to resources in the faculty-specific partition, since the billing limit for the account is charged regardless of what partition is being used.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* cml-abhinav&lt;br /&gt;
* cml-furongh&lt;br /&gt;
* cml-hajiagha&lt;br /&gt;
* cml-ramani&lt;br /&gt;
* cml-sfeizi&lt;br /&gt;
* cml-tokekar&lt;br /&gt;
* cml-tomg&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
                 cml                            cml        cml&lt;br /&gt;
         cml-abhinav      cml - abhinav shrivastava        cml&lt;br /&gt;
         cml-furongh             cml - furong huang        cml&lt;br /&gt;
        cml-hajiagha      cml - mohammad hajiaghayi        cml&lt;br /&gt;
          cml-ramani        cml - ramani duraiswami        cml&lt;br /&gt;
       cml-scavenger                cml - scavenger        cml&lt;br /&gt;
          cml-sfeizi             cml - soheil feizi        cml&lt;br /&gt;
         cml-tokekar           cml - pratap tokekar        cml&lt;br /&gt;
            cml-tomg            cml - tom goldstein        cml&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage the list of users that have access to their Slurm account via our [https://intranet.umiacs.umd.edu/directory/secgroup Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;cml_&amp;lt;/code&amp;gt; prepended to their UMD directory ID.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association(s). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
      tomg              cml                                           cml-cpu,cml-default,cml-medium&lt;br /&gt;
      tomg    cml-scavenger                                                            cml-scavenger&lt;br /&gt;
      tomg         cml-tomg                                          cml-default,cml-high,cml-medium&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. The billing number displayed here is the sum of [[SLURM/Priority#Fair-share | resource weightings]] for all nodes appropriated to that account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=cml format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
                  cml                       billing=6481&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
CML currently has 5 QoS for the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition (though &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; may not be available to all faculty accounts), 1 QoS for the &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;cml-default&amp;lt;/code&amp;gt; QoS assuming you are using a CML account.&lt;br /&gt;
&lt;br /&gt;
If your faculty member&#039;s Slurm account does not have one or both of the &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; QoS available to it, we can add it to their account provided they approve. Please [[HelpDesk | contact staff]] if this is desired.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep cml&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU                                                                             &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------      &lt;br /&gt;
...                                                                       &lt;br /&gt;
             cml-cpu  7-00:00:00                                        8&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep cml&lt;br /&gt;
                Name MaxSubmitPU                      MaxTRESPU              GrpTRES &lt;br /&gt;
-------------------- ----------- ------------------------------ -------------------- &lt;br /&gt;
...&lt;br /&gt;
                 cml         500                                    cpu=1128,mem=11T&lt;br /&gt;
             cml-cpu         500&lt;br /&gt;
        cml-director         500&lt;br /&gt;
         cml-furongh         500&lt;br /&gt;
       cml-scavenger         500                    gres/gpu=24&lt;br /&gt;
          cml-sfeizi         500&lt;br /&gt;
           cml-wriva         500&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
There are 3 types of user storage available to users in the CML:&lt;br /&gt;
* Home directories&lt;br /&gt;
* Project directories&lt;br /&gt;
* Scratch directories&lt;br /&gt;
&lt;br /&gt;
There are also 2 types of read-only storage available for common use among users in the CML:&lt;br /&gt;
* Dataset directories&lt;br /&gt;
* Model directories&lt;br /&gt;
&lt;br /&gt;
CML users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Project Directories===&lt;br /&gt;
You can request project based allocations for up to 6TB for up to 120 days with one or more approvals:&lt;br /&gt;
* Allocations up to and including 3TB require approval from a CML faculty member&lt;br /&gt;
* Allocations above 3TB (up to 6TB) require approval from both a CML faculty member and the [https://ml.umd.edu/#team director of CML]&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (30 days, 90 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations will be available from &#039;&#039;&#039;/fs/cml-projects&#039;&#039;&#039; under a name that you provide when you request the allocation.&lt;br /&gt;
&lt;br /&gt;
This data is backed up nightly.&lt;br /&gt;
&lt;br /&gt;
====Renewal or Retirement====&lt;br /&gt;
Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 120 days (requires re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML).  &lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then retire the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but a faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and a faculty approver responding, staff will retire the allocation.&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the CML compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 200GB of scratch storage available at &amp;lt;code&amp;gt;/cmlscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 800GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 800GB, you will need faculty approval and/or a project directory. Space increases beyond 800GB also have a maximum request period of 120 days (as with project directories), after which they will need to be renewed with re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML.&lt;br /&gt;
* As with project directories, allocations over 3TB total space require approval from the [https://ml.umd.edu/#team director of CML] in addition to your faculty member.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage data to these directories within the confines of your jobs and stage the data out before the end of your jobs.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our monthly maintenance windows.  Again, please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/cml-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of CML datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=CML here].&lt;br /&gt;
&lt;br /&gt;
===Models===&lt;br /&gt;
We have read-only model storage available at &amp;lt;code&amp;gt;/fs/cml-models&amp;lt;/code&amp;gt;.  If there are models that you would like to see downloaded and made available, please see [[Datasets | this page]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13288</id>
		<title>Nexus/CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13288"/>
		<updated>2026-07-08T17:16:02Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CML]]&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscml.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CML users (exclusively) can schedule non-interruptible jobs on CML nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;cml-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all cml## nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;cml&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the CML compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. CML users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition, i.e., all &amp;lt;code&amp;gt;cml-*&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs.&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the CML partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cml[17-28,30-32,34,37]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[35-36]: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via two 100GbE links, one between the first two switches in each pair and one between the second two switches in each pair for redundancy, and to each other via dual 25GbE links for redundancy.&lt;br /&gt;
#* cml[00,02-09]: Two 25GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[10-16],cmlcpu[01-04,06-07]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all CML [[Nexus/CML#Project_Directories | project]], [[Nexus/CML#Scratch_Directories | scratch]], [[Nexus/CML#Datasets | dataset]], and [[Nexus/CML#Models | model]] allocations also connects to the same pair of switches supporting cml[17-28,30-32] via fourteen 25GbE links, seven to each switch in the pair for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general CML [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed. &#039;&#039;&#039;Please note that this partition is being permanently removed on 07/16/2026 at 9am.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available solely to specific faculty members and their sponsored user accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-furongh&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Furong Huang&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-sfeizi&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Soheil Feizi&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is also one additional partition available to user accounts named by CML&#039;s director.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-director&#039;&#039;&#039; - This partition is for exclusive priority access to designated CML-purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
The Center has a base SLURM account &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in the cluster have an additional account provided to their sponsored accounts on the cluster, which provides a number of guaranteed billing resources corresponding to the amount that they invested.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;cml&#039;&#039;&#039; account, which only has access to the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039;, &#039;&#039;&#039;cml-default&#039;&#039;&#039;, and &#039;&#039;&#039;cml-medium&#039;&#039;&#039; QoSes (see below section).&lt;br /&gt;
&lt;br /&gt;
If you need access to a different QoS, or if the &#039;&#039;&#039;cml&#039;&#039;&#039; account is at its billing limit (see below in this section), please use your faculty sponsor&#039;s account if they have one available. However, keep in mind that if you use your faculty sponsor has their own named partition (see previous section), using the faculty-specific account in the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition may block access to resources in the faculty-specific partition, since the billing limit for the account is charged regardless of what partition is being used.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* cml-abhinav&lt;br /&gt;
* cml-furongh&lt;br /&gt;
* cml-hajiagha&lt;br /&gt;
* cml-ramani&lt;br /&gt;
* cml-sfeizi&lt;br /&gt;
* cml-tokekar&lt;br /&gt;
* cml-tomg&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
                 cml                            cml        cml&lt;br /&gt;
         cml-abhinav      cml - abhinav shrivastava        cml&lt;br /&gt;
         cml-furongh             cml - furong huang        cml&lt;br /&gt;
        cml-hajiagha      cml - mohammad hajiaghayi        cml&lt;br /&gt;
          cml-ramani        cml - ramani duraiswami        cml&lt;br /&gt;
       cml-scavenger                cml - scavenger        cml&lt;br /&gt;
          cml-sfeizi             cml - soheil feizi        cml&lt;br /&gt;
         cml-tokekar           cml - pratap tokekar        cml&lt;br /&gt;
            cml-tomg            cml - tom goldstein        cml&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage the list of users that have access to their Slurm account via our [https://intranet.umiacs.umd.edu/directory/secgroup Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;cml_&amp;lt;/code&amp;gt; prepended to their UMD directory ID.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association(s). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
      tomg              cml                                           cml-cpu,cml-default,cml-medium&lt;br /&gt;
      tomg    cml-scavenger                                                            cml-scavenger&lt;br /&gt;
      tomg         cml-tomg                                          cml-default,cml-high,cml-medium&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. The billing number displayed here is the sum of [[SLURM/Priority#Fair-share | resource weightings]] for all nodes appropriated to that account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=cml format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
                  cml                       billing=6481&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
CML currently has 5 QoS for the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition (though &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; may not be available to all faculty accounts), 1 QoS for the &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;cml-default&amp;lt;/code&amp;gt; QoS assuming you are using a CML account.&lt;br /&gt;
&lt;br /&gt;
If your faculty member&#039;s Slurm account does not have one or both of the &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; QoS available to it, we can add it to their account provided they approve. Please [[HelpDesk | contact staff]] if this is desired.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep cml&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU                                                                             &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------      &lt;br /&gt;
...                                                                       &lt;br /&gt;
             cml-cpu  7-00:00:00                                        8&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep cml&lt;br /&gt;
                Name MaxSubmitPU                      MaxTRESPU              GrpTRES &lt;br /&gt;
-------------------- ----------- ------------------------------ -------------------- &lt;br /&gt;
...&lt;br /&gt;
                 cml         500                                    cpu=1128,mem=11T&lt;br /&gt;
             cml-cpu         500&lt;br /&gt;
        cml-director         500&lt;br /&gt;
         cml-furongh         500&lt;br /&gt;
       cml-scavenger         500                    gres/gpu=24&lt;br /&gt;
          cml-sfeizi         500&lt;br /&gt;
           cml-wriva         500&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
There are 3 types of user storage available to users in the CML:&lt;br /&gt;
* Home directories&lt;br /&gt;
* Project directories&lt;br /&gt;
* Scratch directories&lt;br /&gt;
&lt;br /&gt;
There are also 2 types of read-only storage available for common use among users in the CML:&lt;br /&gt;
* Dataset directories&lt;br /&gt;
* Model directories&lt;br /&gt;
&lt;br /&gt;
CML users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Project Directories===&lt;br /&gt;
You can request project based allocations for up to 6TB for up to 120 days with one or more approvals:&lt;br /&gt;
* Allocations up to and including 3TB require approval from a CML faculty member&lt;br /&gt;
* Allocations above 3TB (up to 6TB) require approval from both a CML faculty member and the [https://ml.umd.edu/#team director of CML]&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (30 days, 90 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations will be available from &#039;&#039;&#039;/fs/cml-projects&#039;&#039;&#039; under a name that you provide when you request the allocation.&lt;br /&gt;
&lt;br /&gt;
This data is backed up nightly.&lt;br /&gt;
&lt;br /&gt;
====Renewal or Retirement====&lt;br /&gt;
Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 120 days (requires re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML).  &lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then retire the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but a faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and a faculty approver responding, staff will retire the allocation.&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the CML compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 200GB of scratch storage available at &amp;lt;code&amp;gt;/cmlscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 800GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 800GB, you will need faculty approval and/or a project directory. Space increases beyond 800GB also have a maximum request period of 120 days (as with project directories), after which they will need to be renewed with re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML.&lt;br /&gt;
* As with project directories, allocations over 3TB total space require approval from the [https://ml.umd.edu/#team director of CML] in addition to your faculty member.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage data to these directories within the confines of your jobs and stage the data out before the end of your jobs.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our monthly maintenance windows.  Again, please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/cml-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of CML datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=CML here].&lt;br /&gt;
&lt;br /&gt;
===Models===&lt;br /&gt;
We have read-only model storage available at &amp;lt;code&amp;gt;/fs/cml-models&amp;lt;/code&amp;gt;.  If there are models that you would like to see downloaded and made available, please see [[Datasets | this page]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13287</id>
		<title>Nexus/CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13287"/>
		<updated>2026-07-08T17:15:40Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CML]]&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscml.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
CML users (exclusively) can schedule non-interruptible jobs on CML nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;cml-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all cml## nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;cml&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the CML compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. CML users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition (i.e., all &amp;lt;code&amp;gt;cml-*&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs).&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the CML partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cml[17-28,30-32,34,37]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[35-36]: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via two 100GbE links, one between the first two switches in each pair and one between the second two switches in each pair for redundancy, and to each other via dual 25GbE links for redundancy.&lt;br /&gt;
#* cml[00,02-09]: Two 25GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[10-16],cmlcpu[01-04,06-07]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all CML [[Nexus/CML#Project_Directories | project]], [[Nexus/CML#Scratch_Directories | scratch]], [[Nexus/CML#Datasets | dataset]], and [[Nexus/CML#Models | model]] allocations also connects to the same pair of switches supporting cml[17-28,30-32] via fourteen 25GbE links, seven to each switch in the pair for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general CML [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed. &#039;&#039;&#039;Please note that this partition is being permanently removed on 07/16/2026 at 9am.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available solely to specific faculty members and their sponsored user accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-furongh&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Furong Huang&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-sfeizi&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Soheil Feizi&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is also one additional partition available to user accounts named by CML&#039;s director.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-director&#039;&#039;&#039; - This partition is for exclusive priority access to designated CML-purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
The Center has a base SLURM account &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in the cluster have an additional account provided to their sponsored accounts on the cluster, which provides a number of guaranteed billing resources corresponding to the amount that they invested.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;cml&#039;&#039;&#039; account, which only has access to the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039;, &#039;&#039;&#039;cml-default&#039;&#039;&#039;, and &#039;&#039;&#039;cml-medium&#039;&#039;&#039; QoSes (see below section).&lt;br /&gt;
&lt;br /&gt;
If you need access to a different QoS, or if the &#039;&#039;&#039;cml&#039;&#039;&#039; account is at its billing limit (see below in this section), please use your faculty sponsor&#039;s account if they have one available. However, keep in mind that if you use your faculty sponsor has their own named partition (see previous section), using the faculty-specific account in the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition may block access to resources in the faculty-specific partition, since the billing limit for the account is charged regardless of what partition is being used.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* cml-abhinav&lt;br /&gt;
* cml-furongh&lt;br /&gt;
* cml-hajiagha&lt;br /&gt;
* cml-ramani&lt;br /&gt;
* cml-sfeizi&lt;br /&gt;
* cml-tokekar&lt;br /&gt;
* cml-tomg&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
                 cml                            cml        cml&lt;br /&gt;
         cml-abhinav      cml - abhinav shrivastava        cml&lt;br /&gt;
         cml-furongh             cml - furong huang        cml&lt;br /&gt;
        cml-hajiagha      cml - mohammad hajiaghayi        cml&lt;br /&gt;
          cml-ramani        cml - ramani duraiswami        cml&lt;br /&gt;
       cml-scavenger                cml - scavenger        cml&lt;br /&gt;
          cml-sfeizi             cml - soheil feizi        cml&lt;br /&gt;
         cml-tokekar           cml - pratap tokekar        cml&lt;br /&gt;
            cml-tomg            cml - tom goldstein        cml&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage the list of users that have access to their Slurm account via our [https://intranet.umiacs.umd.edu/directory/secgroup Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;cml_&amp;lt;/code&amp;gt; prepended to their UMD directory ID.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association(s). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
      tomg              cml                                           cml-cpu,cml-default,cml-medium&lt;br /&gt;
      tomg    cml-scavenger                                                            cml-scavenger&lt;br /&gt;
      tomg         cml-tomg                                          cml-default,cml-high,cml-medium&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. The billing number displayed here is the sum of [[SLURM/Priority#Fair-share | resource weightings]] for all nodes appropriated to that account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=cml format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
                  cml                       billing=6481&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
CML currently has 5 QoS for the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition (though &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; may not be available to all faculty accounts), 1 QoS for the &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;cml-default&amp;lt;/code&amp;gt; QoS assuming you are using a CML account.&lt;br /&gt;
&lt;br /&gt;
If your faculty member&#039;s Slurm account does not have one or both of the &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; QoS available to it, we can add it to their account provided they approve. Please [[HelpDesk | contact staff]] if this is desired.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep cml&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU                                                                             &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------      &lt;br /&gt;
...                                                                       &lt;br /&gt;
             cml-cpu  7-00:00:00                                        8&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep cml&lt;br /&gt;
                Name MaxSubmitPU                      MaxTRESPU              GrpTRES &lt;br /&gt;
-------------------- ----------- ------------------------------ -------------------- &lt;br /&gt;
...&lt;br /&gt;
                 cml         500                                    cpu=1128,mem=11T&lt;br /&gt;
             cml-cpu         500&lt;br /&gt;
        cml-director         500&lt;br /&gt;
         cml-furongh         500&lt;br /&gt;
       cml-scavenger         500                    gres/gpu=24&lt;br /&gt;
          cml-sfeizi         500&lt;br /&gt;
           cml-wriva         500&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
There are 3 types of user storage available to users in the CML:&lt;br /&gt;
* Home directories&lt;br /&gt;
* Project directories&lt;br /&gt;
* Scratch directories&lt;br /&gt;
&lt;br /&gt;
There are also 2 types of read-only storage available for common use among users in the CML:&lt;br /&gt;
* Dataset directories&lt;br /&gt;
* Model directories&lt;br /&gt;
&lt;br /&gt;
CML users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Project Directories===&lt;br /&gt;
You can request project based allocations for up to 6TB for up to 120 days with one or more approvals:&lt;br /&gt;
* Allocations up to and including 3TB require approval from a CML faculty member&lt;br /&gt;
* Allocations above 3TB (up to 6TB) require approval from both a CML faculty member and the [https://ml.umd.edu/#team director of CML]&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (30 days, 90 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations will be available from &#039;&#039;&#039;/fs/cml-projects&#039;&#039;&#039; under a name that you provide when you request the allocation.&lt;br /&gt;
&lt;br /&gt;
This data is backed up nightly.&lt;br /&gt;
&lt;br /&gt;
====Renewal or Retirement====&lt;br /&gt;
Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 120 days (requires re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML).  &lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then retire the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but a faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and a faculty approver responding, staff will retire the allocation.&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the CML compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 200GB of scratch storage available at &amp;lt;code&amp;gt;/cmlscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 800GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 800GB, you will need faculty approval and/or a project directory. Space increases beyond 800GB also have a maximum request period of 120 days (as with project directories), after which they will need to be renewed with re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML.&lt;br /&gt;
* As with project directories, allocations over 3TB total space require approval from the [https://ml.umd.edu/#team director of CML] in addition to your faculty member.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage data to these directories within the confines of your jobs and stage the data out before the end of your jobs.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our monthly maintenance windows.  Again, please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/cml-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of CML datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=CML here].&lt;br /&gt;
&lt;br /&gt;
===Models===&lt;br /&gt;
We have read-only model storage available at &amp;lt;code&amp;gt;/fs/cml-models&amp;lt;/code&amp;gt;.  If there are models that you would like to see downloaded and made available, please see [[Datasets | this page]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13286</id>
		<title>Nexus/CML</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CML&amp;diff=13286"/>
		<updated>2026-07-08T17:14:34Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CML]]&#039;s previous standalone cluster have folded into [[Nexus]] as of the scheduled [[MonthlyMaintenanceWindow | maintenance window]] for August 2023 (Thursday 08/17/2023, 5-8pm).&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscml.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscml01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
All partitions, QoSes, and account names from the standalone CML cluster have been moved over to Nexus. However, please note that &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; is prepended to all of the values that were present in the standalone CML cluster to distinguish them from existing values in Nexus. The lone exception is the base account that was named &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; in the standalone cluster (it is also named just &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; in Nexus).&lt;br /&gt;
&lt;br /&gt;
Here are some before/after examples of job submission with various parameters:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Standalone CML cluster submission command&lt;br /&gt;
! Nexus cluster submission command&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=dpart --qos=medium --account=tomg --gres=gpu:rtx2080ti:2 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=cml-dpart --qos=cml-medium --account=cml-tomg --gres=gpu:rtx2080ti:2 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=cpu --qos=cpu --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=cml-cpu --qos=cml-cpu --account=cml --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=scavenger --qos=scavenger --account=scavenger --gres=gpu:4 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|&amp;lt;code&amp;gt;srun --partition=cml-scavenger --qos=cml-scavenger --account=cml-scavenger --gres=gpu:4 --pty bash&amp;lt;/code&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
CML users (exclusively) can schedule non-interruptible jobs on CML nodes with any non-scavenger job parameters. Please note that the &amp;lt;code&amp;gt;cml-dpart&amp;lt;/code&amp;gt; partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on all cml## nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use. It also has a max submission limit of 500 jobs per user simultaneously so as to not overload the cluster. This is codified by the partition QoS named &#039;&#039;&#039;cml&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Please note that the CML compute nodes are also in the institute-wide &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition in Nexus. CML users still have scavenging priority over these nodes via the &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition (i.e., all &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partition jobs (other than &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt;) can preempt both &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs, and &amp;lt;code&amp;gt;cml-scavenger&amp;lt;/code&amp;gt; partition jobs can preempt &amp;lt;code&amp;gt;scavenger&amp;lt;/code&amp;gt; partition jobs).&lt;br /&gt;
&lt;br /&gt;
==Network==&lt;br /&gt;
The network infrastructure supporting the CML partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cml[17-28,30-32,34,37]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[35-36]: Four 100GbE links, two to each switch in the pair (redundancy and increased bandwidth).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via two 100GbE links, one between the first two switches in each pair and one between the second two switches in each pair for redundancy, and to each other via dual 25GbE links for redundancy.&lt;br /&gt;
#* cml[00,02-09]: Two 25GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* cml[10-16],cmlcpu[01-04,06-07]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all CML [[Nexus/CML#Project_Directories | project]], [[Nexus/CML#Scratch_Directories | scratch]], [[Nexus/CML#Datasets | dataset]], and [[Nexus/CML#Models | model]] allocations also connects to the same pair of switches supporting cml[17-28,30-32] via fourteen 25GbE links, seven to each switch in the pair for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
==Partitions==&lt;br /&gt;
There are three partitions available to general CML [[SLURM]] users.  You must specify a partition when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; - This is the default partition. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; - This is the alternate partition that allows jobs longer run times and more resources but is preemptable when jobs in other &amp;lt;code&amp;gt;cml-&amp;lt;/code&amp;gt; partitions are ready to be scheduled.&lt;br /&gt;
* &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; - This partition is for CPU focused jobs. Job allocations are guaranteed. &#039;&#039;&#039;Please note that this partition is being permanently removed on 07/16/2026 at 9am.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
There are a few additional partitions available solely to specific faculty members and their sponsored user accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-furongh&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Furong Huang&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cml-sfeizi&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Soheil Feizi&#039;s purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is also one additional partition available to user accounts named by CML&#039;s director.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cml-director&#039;&#039;&#039; - This partition is for exclusive priority access to designated CML-purchased nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
==Accounts==&lt;br /&gt;
The Center has a base SLURM account &amp;lt;code&amp;gt;cml&amp;lt;/code&amp;gt; which has a modest number of guaranteed billing resources available to all cluster users at any given time.  Other faculty that have invested in the cluster have an additional account provided to their sponsored accounts on the cluster, which provides a number of guaranteed billing resources corresponding to the amount that they invested.&lt;br /&gt;
&lt;br /&gt;
If you do not specify an account when submitting your job, you will receive the &#039;&#039;&#039;cml&#039;&#039;&#039; account, which only has access to the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039;, &#039;&#039;&#039;cml-default&#039;&#039;&#039;, and &#039;&#039;&#039;cml-medium&#039;&#039;&#039; QoSes (see below section).&lt;br /&gt;
&lt;br /&gt;
If you need access to a different QoS, or if the &#039;&#039;&#039;cml&#039;&#039;&#039; account is at its billing limit (see below in this section), please use your faculty sponsor&#039;s account if they have one available. However, keep in mind that if you use your faculty sponsor has their own named partition (see previous section), using the faculty-specific account in the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition may block access to resources in the faculty-specific partition, since the billing limit for the account is charged regardless of what partition is being used.&lt;br /&gt;
&lt;br /&gt;
The current faculty accounts are:&lt;br /&gt;
* cml-abhinav&lt;br /&gt;
* cml-furongh&lt;br /&gt;
* cml-hajiagha&lt;br /&gt;
* cml-ramani&lt;br /&gt;
* cml-sfeizi&lt;br /&gt;
* cml-tokekar&lt;br /&gt;
* cml-tomg&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show account format=account%20,description%30,organization%10&lt;br /&gt;
             Account                          Descr        Org&lt;br /&gt;
-------------------- ------------------------------ ----------&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
                 cml                            cml        cml&lt;br /&gt;
         cml-abhinav      cml - abhinav shrivastava        cml&lt;br /&gt;
         cml-furongh             cml - furong huang        cml&lt;br /&gt;
        cml-hajiagha      cml - mohammad hajiaghayi        cml&lt;br /&gt;
          cml-ramani        cml - ramani duraiswami        cml&lt;br /&gt;
       cml-scavenger                cml - scavenger        cml&lt;br /&gt;
          cml-sfeizi             cml - soheil feizi        cml&lt;br /&gt;
         cml-tokekar           cml - pratap tokekar        cml&lt;br /&gt;
            cml-tomg            cml - tom goldstein        cml&lt;br /&gt;
                 ...                            ...        ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Faculty can manage the list of users that have access to their Slurm account via our [https://intranet.umiacs.umd.edu/directory/secgroup Directory application] in the Security Groups section.  The security group that controls access has the prefix &amp;lt;code&amp;gt;cml_&amp;lt;/code&amp;gt; prepended to their UMD directory ID.  It will also list &amp;lt;code&amp;gt;slurm://nexusctl.umiacs.umd.edu&amp;lt;/code&amp;gt; as the associated URI.&lt;br /&gt;
&lt;br /&gt;
You can check your account associations by running the &#039;&#039;&#039;show_assoc&#039;&#039;&#039; command.  Please [[HelpDesk | contact staff]] and include your faculty member in the conversation if you do not see the appropriate association(s). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_assoc&lt;br /&gt;
      User          Account MaxJobs       GrpTRES                                                QOS&lt;br /&gt;
---------- ---------------- ------- ------------- --------------------------------------------------&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
      tomg              cml                                           cml-cpu,cml-default,cml-medium&lt;br /&gt;
      tomg    cml-scavenger                                                            cml-scavenger&lt;br /&gt;
      tomg         cml-tomg                                          cml-default,cml-high,cml-medium&lt;br /&gt;
       ...              ...                                                                      ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also see the total number of Track-able Resources (TRES) allowed for each account by running the following command. Please make sure you give the appropriate account that you are looking for. The billing number displayed here is the sum of [[SLURM/Priority#Fair-share | resource weightings]] for all nodes appropriated to that account.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sacctmgr show assoc account=cml format=user,account,qos,grptres&lt;br /&gt;
      User    Account                  QOS       GrpTRES&lt;br /&gt;
---------- ---------- -------------------- -------------&lt;br /&gt;
                  cml                       billing=6481&lt;br /&gt;
                  ...                                ...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==QoS==&lt;br /&gt;
CML currently has 5 QoS for the &#039;&#039;&#039;cml-dpart&#039;&#039;&#039; partition (though &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; may not be available to all faculty accounts), 1 QoS for the &#039;&#039;&#039;cml-scavenger&#039;&#039;&#039; partition, and 1 QoS for the &#039;&#039;&#039;cml-cpu&#039;&#039;&#039; partition.  If you do not specify a QoS when submitting your job using the &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; parameter, you will receive the &amp;lt;code&amp;gt;cml-default&amp;lt;/code&amp;gt; QoS assuming you are using a CML account.&lt;br /&gt;
&lt;br /&gt;
If your faculty member&#039;s Slurm account does not have one or both of the &amp;lt;code&amp;gt;cml-high_long&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;cml-very_high&amp;lt;/code&amp;gt; QoS available to it, we can add it to their account provided they approve. Please [[HelpDesk | contact staff]] if this is desired.&lt;br /&gt;
&lt;br /&gt;
The important part here is that in different QoS you can have a shorter/longer maximum wall time, a different total number of jobs running at once, and a different maximum number of track-able resources (TRES) for the job.  In the cml-scavenger QoS, one more constraint that you are restricted by is the total number of TRES per user (over multiple jobs).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all | grep cml&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU                                                                             &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------      &lt;br /&gt;
...                                                                       &lt;br /&gt;
             cml-cpu  7-00:00:00                                        8&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all | grep cml&lt;br /&gt;
                Name MaxSubmitPU                      MaxTRESPU              GrpTRES &lt;br /&gt;
-------------------- ----------- ------------------------------ -------------------- &lt;br /&gt;
...&lt;br /&gt;
                 cml         500                                    cpu=1128,mem=11T&lt;br /&gt;
             cml-cpu         500&lt;br /&gt;
        cml-director         500&lt;br /&gt;
         cml-furongh         500&lt;br /&gt;
       cml-scavenger         500                    gres/gpu=24&lt;br /&gt;
          cml-sfeizi         500&lt;br /&gt;
           cml-wriva         500&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Storage==&lt;br /&gt;
There are 3 types of user storage available to users in the CML:&lt;br /&gt;
* Home directories&lt;br /&gt;
* Project directories&lt;br /&gt;
* Scratch directories&lt;br /&gt;
&lt;br /&gt;
There are also 2 types of read-only storage available for common use among users in the CML:&lt;br /&gt;
* Dataset directories&lt;br /&gt;
* Model directories&lt;br /&gt;
&lt;br /&gt;
CML users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
===Home Directories===&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
===Project Directories===&lt;br /&gt;
You can request project based allocations for up to 6TB for up to 120 days with one or more approvals:&lt;br /&gt;
* Allocations up to and including 3TB require approval from a CML faculty member&lt;br /&gt;
* Allocations above 3TB (up to 6TB) require approval from both a CML faculty member and the [https://ml.umd.edu/#team director of CML]&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (30 days, 90 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations will be available from &#039;&#039;&#039;/fs/cml-projects&#039;&#039;&#039; under a name that you provide when you request the allocation.&lt;br /&gt;
&lt;br /&gt;
This data is backed up nightly.&lt;br /&gt;
&lt;br /&gt;
====Renewal or Retirement====&lt;br /&gt;
Near the end of the allocation period, staff will contact you and ask if you would like to renew the allocation for up to another 120 days (requires re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML).  &lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then retire the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but a faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and a faculty approver responding, staff will retire the allocation.&lt;br /&gt;
&lt;br /&gt;
===Scratch Directories===&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the CML compute infrastructure:&lt;br /&gt;
* Network scratch directory&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
====Network Scratch Directory====&lt;br /&gt;
You have 200GB of scratch storage available at &amp;lt;code&amp;gt;/cmlscratch/&amp;lt;username&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;automounted&#039;&#039;&#039; so you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access this.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 800GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 800GB, you will need faculty approval and/or a project directory. Space increases beyond 800GB also have a maximum request period of 120 days (as with project directories), after which they will need to be renewed with re-approval from a CML faculty member and, if the allocation is over 3TB, the director of CML.&lt;br /&gt;
* As with project directories, allocations over 3TB total space require approval from the [https://ml.umd.edu/#team director of CML] in addition to your faculty member.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
====Local Scratch Directories====&lt;br /&gt;
Each computational node that you can schedule compute jobs on has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc.  These are almost always more performant than any other storage available to the job.  However, you must stage data to these directories within the confines of your jobs and stage the data out before the end of your jobs.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our monthly maintenance windows.  Again, please make sure you secure any data you write to these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
===Datasets===&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/cml-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of CML datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=CML here].&lt;br /&gt;
&lt;br /&gt;
===Models===&lt;br /&gt;
We have read-only model storage available at &amp;lt;code&amp;gt;/fs/cml-models&amp;lt;/code&amp;gt;.  If there are models that you would like to see downloaded and made available, please see [[Datasets | this page]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13285</id>
		<title>Nexus/CBCB</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13285"/>
		<updated>2026-07-01T15:15:25Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CBCB]]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscbcb.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
All compute nodes in CBCB-owned partitions (see below section) owned by CBCB faculty are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;. The sets of nodes are:&lt;br /&gt;
* 22 nodes that were purchased in October 2022 with center-wide funding.  They are cbcb[00-21].&lt;br /&gt;
* 4 nodes from the previous standalone CBCB cluster that moved in as of Summer 2023.  They are cbcb[22-25].&lt;br /&gt;
* 4 additional nodes purchased by Dr. Heng Huang.  They are cbcb[26-29].&lt;br /&gt;
* 1 additional node purchased by Dr. Mihai Pop.  It is cbcb30.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node (CPUs)&lt;br /&gt;
! Memory per node (type)&lt;br /&gt;
! Filesystem storage per node (type/location)&lt;br /&gt;
! GPUs per node (type)&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[00-21]&lt;br /&gt;
|22&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7313.html AMD EPYC 7313])&lt;br /&gt;
|~2TB (DDR4 3200MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~2TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|- &lt;br /&gt;
|cbcb22&lt;br /&gt;
|1&lt;br /&gt;
|28 (Dual [https://ark.intel.com/content/www/us/en/ark/products/91754/intel-xeon-processor-e5-2680-v4-35m-cache-2-40-ghz.html Intel Xeon E5-2680 v4])&lt;br /&gt;
|~768GB (DDR4 2400MHz)&lt;br /&gt;
|~650GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|0&lt;br /&gt;
|- &lt;br /&gt;
|cbcb[23-24]&lt;br /&gt;
|2&lt;br /&gt;
|24 (Dual [https://www.intel.com/content/www/us/en/products/sku/91767/intel-xeon-processor-e52650-v4-30m-cache-2-20-ghz/specifications.html Intel Xeon E5-2650 v4])&lt;br /&gt;
|~256GB (DDR4 2400MHz)&lt;br /&gt;
|~800GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|0&lt;br /&gt;
|- &lt;br /&gt;
|cbcb25&lt;br /&gt;
|1&lt;br /&gt;
|24 (Dual [https://www.intel.com/content/www/us/en/products/sku/91767/intel-xeon-processor-e52650-v4-30m-cache-2-20-ghz/specifications.html Intel Xeon E5-2650 v4])&lt;br /&gt;
|~256GB (DDR4 2400MHz)&lt;br /&gt;
|~1.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|2 (1x [https://www.nvidia.com/en-gb/geforce/graphics-cards/geforce-gtx-1080-ti/specifications/ NVIDIA GeForce GTX 1080 Ti], 1x [https://www.nvidia.com/en-us/geforce/graphics-cards/compare/?section=compare-20 NVIDIA GeForce RTX 2080 Ti])&lt;br /&gt;
|- &lt;br /&gt;
|cbcb26&lt;br /&gt;
|1&lt;br /&gt;
|128 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7763.html AMD EPYC 7763])&lt;br /&gt;
|~512GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~14TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|7 ([https://www.nvidia.com/en-us/design-visualization/rtx-a5000 NVIDIA RTX A5000])&lt;br /&gt;
|- &lt;br /&gt;
|cbcb27&lt;br /&gt;
|1&lt;br /&gt;
|64 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7513.html AMD EPYC 7513])&lt;br /&gt;
|~256GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~3.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-a6000 NVIDIA RTX A6000])&lt;br /&gt;
|- &lt;br /&gt;
|cbcb[28-29]&lt;br /&gt;
|2&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/4th-generation-9004-and-8004-series/amd-epyc-9124.html AMD EPYC 9124])&lt;br /&gt;
|~768GB (DDR5 4800MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~7TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-6000 NVIDIA RTX 6000 Ada Generation])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb30&lt;br /&gt;
|1&lt;br /&gt;
|48 (Single [https://www.amd.com/en/products/processors/server/epyc/9005-series/amd-epyc-9475f.html AMD EPYC 9475F])&lt;br /&gt;
|~1.15TB (DDR5 6400MHz)&lt;br /&gt;
|~350GB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~10.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
!Total&lt;br /&gt;
|31&lt;br /&gt;
|1108 (various)&lt;br /&gt;
|~50TB (various)&lt;br /&gt;
|~105TB (various)&lt;br /&gt;
|33 (various)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Here is the listing of nodes as shown by the Slurm alias &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; (again, all nodes are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@nexusctl00 ~]# show_nodes | grep cbcb&lt;br /&gt;
NODELIST             CPUS       MEMORY     AVAIL_FEATURES                           GRES                             STATE&lt;br /&gt;
cbcb00               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb01               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb02               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb03               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb04               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb05               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb06               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb07               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb08               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb09               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb10               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb11               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb12               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb13               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb14               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb15               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb16               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb17               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb18               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb19               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb20               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb21               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb22               28         771245     rhel8,x86_64,Xeon,E5-2680                (null)                           idle&lt;br /&gt;
cbcb23               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb24               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb25               24         255278     rhel8,x86_64,Xeon,E5-2650,Pascal,Turing  gpu:rtx2080ti:1,gpu:gtx1080ti:1  idle&lt;br /&gt;
cbcb26               128        513243     rhel8,x86_64,Zen,EPYC-7763,Ampere        gpu:rtxa5000:7                   idle&lt;br /&gt;
cbcb27               64         255167     rhel8,x86_64,Zen,EPYC-7513,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
cbcb28               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb29               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb30               48         1157583    rhel8,x86_64,EPYC,EPYC-9475F             (null)                           idle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the CBCB partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cbcb[00-21,26-30]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via four 40GbE links, one between every combination of switches across the two pairings for redundancy, and to each other via dual 10GbE links for redundancy.&lt;br /&gt;
#* cbcb[22-25]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
= Partitions =&lt;br /&gt;
There are two partitions available to general CBCB [[SLURM]] users. You must specify one of these two partitions when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb&#039;&#039;&#039; - This is the default partition. Job allocations on all nodes except those also in the &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partition are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; - This is a partition that only allows interactive jobs; you cannot submit jobs via &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; to this partition. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Heng Huang&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Huang&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
CBCB users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions using the &amp;lt;code&amp;gt;cbcb&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;highmem&amp;lt;/code&amp;gt;: Allows for significantly increased memory to be allocated.&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;only&#039;&#039; allowed job QoS for the &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; partition is:&lt;br /&gt;
* &amp;lt;code&amp;gt;interactive&amp;lt;/code&amp;gt;: Allows for 4 CPU / 128G mem jobs up to 12 hours in length - can only be used via &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;salloc&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=cbcb&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=cbcb&amp;lt;/code&amp;gt; to be able to submit jobs to the CBCB partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexuscbcb00:~ ] $ srun --pty --ntasks=16 --mem=2000G --qos=highmem --partition=cbcb --account=cbcb --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@cbcb00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=cbcb QOS=highmem&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=cbcb AllocNode:Sid=nexuscbcb00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=cbcb00&lt;br /&gt;
   BatchHost=cbcb00&lt;br /&gt;
   NumNodes=1 NumCPUs=16 NumTasks=16 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=16,mem=2000G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=2000G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
CBCB still has its current [https://wiki.umiacs.umd.edu/cbcb-private/index.php/Storage storage] allocation in place.  All data filesystems that were available in the standalone CBCB cluster are also available in Nexus.  Please note about the change in your home directory in the migration section below.&lt;br /&gt;
&lt;br /&gt;
CBCB users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
= Operating System / Software =&lt;br /&gt;
CBCB&#039;s standalone cluster submission and compute nodes were running RHEL7.  [[Nexus]] is running a mixture of RHEL8 and RHEL9, so any software you compiled on the standalone cluster may need to be re-compiled to work correctly in this new environment.  The [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules CBCB module tree] for RHEL8+ may not yet be fully populated with RHEL8+ software.  If you do not see the modules you need, please reach out to the [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules#Contact CBCB software maintainers].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13284</id>
		<title>Nexus/CBCB</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/CBCB&amp;diff=13284"/>
		<updated>2026-06-30T16:48:58Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [[CBCB]]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexuscbcb.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexuscbcb01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
All compute nodes in CBCB-owned partitions (see below section) owned by CBCB faculty are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;. The sets of nodes are:&lt;br /&gt;
* 22 nodes that were purchased in October 2022 with center-wide funding.  They are cbcb[00-21].&lt;br /&gt;
* 4 nodes from the previous standalone CBCB cluster that moved in as of Summer 2023.  They are cbcb[22-25].&lt;br /&gt;
* 4 additional nodes purchased by Dr. Heng Huang.  They are cbcb[26-29].&lt;br /&gt;
* 1 additional node purchased by Dr. Mihai Pop.  It is cbcb30.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node (CPUs)&lt;br /&gt;
! Memory per node (type)&lt;br /&gt;
! Filesystem storage per node (type/location)&lt;br /&gt;
! GPUs per node (type)&lt;br /&gt;
|-&lt;br /&gt;
|cbcb[00-21]&lt;br /&gt;
|22&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7313.html AMD EPYC 7313])&lt;br /&gt;
|~2TB (DDR4 3200MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~2TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|- &lt;br /&gt;
|cbcb22&lt;br /&gt;
|1&lt;br /&gt;
|28 (Dual [https://ark.intel.com/content/www/us/en/ark/products/91754/intel-xeon-processor-e5-2680-v4-35m-cache-2-40-ghz.html Intel Xeon E5-2680 v4])&lt;br /&gt;
|~768GB (DDR4 2400MHz)&lt;br /&gt;
|~650GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|0&lt;br /&gt;
|- &lt;br /&gt;
|cbcb[23-24]&lt;br /&gt;
|2&lt;br /&gt;
|24 (Dual [https://www.intel.com/content/www/us/en/products/sku/91767/intel-xeon-processor-e52650-v4-30m-cache-2-20-ghz/specifications.html Intel Xeon E5-2650 v4])&lt;br /&gt;
|~256GB (DDR4 2400MHz)&lt;br /&gt;
|~800GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|0&lt;br /&gt;
|- &lt;br /&gt;
|cbcb25&lt;br /&gt;
|1&lt;br /&gt;
|24 (Dual [https://www.intel.com/content/www/us/en/products/sku/91767/intel-xeon-processor-e52650-v4-30m-cache-2-20-ghz/specifications.html Intel Xeon E5-2650 v4])&lt;br /&gt;
|~256GB (DDR4 2400MHz)&lt;br /&gt;
|~1.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]])&lt;br /&gt;
|2 (1x [https://www.nvidia.com/en-gb/geforce/graphics-cards/geforce-gtx-1080-ti/specifications/ NVIDIA GeForce GTX 1080 Ti], 1x [https://www.nvidia.com/en-us/geforce/graphics-cards/compare/?section=compare-20 NVIDIA GeForce RTX 2080 Ti])&lt;br /&gt;
|- &lt;br /&gt;
|cbcb26&lt;br /&gt;
|1&lt;br /&gt;
|128 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7763.html AMD EPYC 7763])&lt;br /&gt;
|~512GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~14TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|7 ([https://www.nvidia.com/en-us/design-visualization/rtx-a5000 NVIDIA RTX A5000])&lt;br /&gt;
|- &lt;br /&gt;
|cbcb27&lt;br /&gt;
|1&lt;br /&gt;
|64 (Dual [https://www.amd.com/en/products/processors/server/epyc/7003-series/amd-epyc-7513.html AMD EPYC 7513])&lt;br /&gt;
|~256GB (DDR4 3200MHz)&lt;br /&gt;
|~3.4TB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~3.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-a6000 NVIDIA RTX A6000])&lt;br /&gt;
|- &lt;br /&gt;
|cbcb[28-29]&lt;br /&gt;
|2&lt;br /&gt;
|32 (Dual [https://www.amd.com/en/products/processors/server/epyc/4th-generation-9004-and-8004-series/amd-epyc-9124.html AMD EPYC 9124])&lt;br /&gt;
|~768GB (DDR5 4800MHz)&lt;br /&gt;
|~350GB (SATA SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~7TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|8 ([https://www.nvidia.com/en-us/design-visualization/rtx-6000 NVIDIA RTX 6000 Ada Generation])&lt;br /&gt;
|-&lt;br /&gt;
|cbcb30&lt;br /&gt;
|1&lt;br /&gt;
|48 (Single [https://www.amd.com/en/products/processors/server/epyc/9005-series/amd-epyc-9475f.html AMD EPYC 9475F])&lt;br /&gt;
|~1.15TB (DDR5 6400MHz)&lt;br /&gt;
|~350GB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch0]]), ~10.5TB (NVMe SSD [[FilesystemDataStorage#UNIX_Filesystem_Storage | /scratch1]])&lt;br /&gt;
|0&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
!Total&lt;br /&gt;
|31&lt;br /&gt;
|1108 (various)&lt;br /&gt;
|~50TB (various)&lt;br /&gt;
|~105TB (various)&lt;br /&gt;
|33 (various)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Here is the listing of nodes as shown by the Slurm alias &amp;lt;code&amp;gt;show_nodes&amp;lt;/code&amp;gt; (again, all nodes are named in the format &amp;lt;code&amp;gt;cbcb##&amp;lt;/code&amp;gt;):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[root@nexusctl00 ~]# show_nodes | grep cbcb&lt;br /&gt;
NODELIST             CPUS       MEMORY     AVAIL_FEATURES                           GRES                             STATE&lt;br /&gt;
cbcb00               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb01               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb02               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb03               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb04               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb05               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb06               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb07               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb08               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb09               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb10               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb11               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb12               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb13               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb14               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb15               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb16               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb17               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb18               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb19               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb20               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb21               32         2061175    rhel8,x86_64,Zen,EPYC-7313               (null)                           idle&lt;br /&gt;
cbcb22               28         771245     rhel8,x86_64,Xeon,E5-2680                (null)                           idle&lt;br /&gt;
cbcb23               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb24               24         255150     rhel8,x86_64,Xeon,E5-2650                (null)                           idle&lt;br /&gt;
cbcb25               24         255278     rhel8,x86_64,Xeon,E5-2650,Pascal,Turing  gpu:rtx2080ti:1,gpu:gtx1080ti:1  idle&lt;br /&gt;
cbcb26               128        513243     rhel8,x86_64,Zen,EPYC-7763,Ampere        gpu:rtxa5000:7                   idle&lt;br /&gt;
cbcb27               64         255167     rhel8,x86_64,Zen,EPYC-7513,Ampere        gpu:rtxa6000:8                   idle&lt;br /&gt;
cbcb28               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb29               32         771166     rhel8,x86_64,Zen,EPYC-9124,Ada           gpu:rtx6000ada:8                 idle&lt;br /&gt;
cbcb30               48         1157583    rhel8,x86_64,EPYC,EPYC-9475F             (null)                           idle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the CBCB partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* cbcb[00-21,26-30]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
# One pair of network switches connected to the above pair of network switches via four 40GbE links, one between every combination of switches across the two pairings for redundancy, and to each other via dual 10GbE links for redundancy.&lt;br /&gt;
#* cbcb[22-25]: Two 10GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;br /&gt;
&lt;br /&gt;
= Partitions =&lt;br /&gt;
There are two partitions available to general CBCB [[SLURM]] users. You must specify one of these two partitions when submitting your job.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb&#039;&#039;&#039; - This is the default partition. Job allocations on all nodes except those also in the &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partition are guaranteed.&lt;br /&gt;
* &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; - This is a partition that only allows interactive jobs; you cannot submit jobs via &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; to this partition. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
There is one additional partition available solely to Dr. Heng Huang&#039;s sponsored accounts.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; - This partition is for exclusive priority access to Dr. Huang&#039;s purchased GPU nodes. Job allocations are guaranteed.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
CBCB users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions using the &amp;lt;code&amp;gt;cbcb&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the &#039;&#039;&#039;cbcb&#039;&#039;&#039; and &#039;&#039;&#039;cbcb-heng&#039;&#039;&#039; partitions specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;highmem&amp;lt;/code&amp;gt;: Allows for significantly increased memory to be allocated.&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;only&#039;&#039; allowed job QoS for the &#039;&#039;&#039;cbcb-interactive&#039;&#039;&#039; partition is:&lt;br /&gt;
* &amp;lt;code&amp;gt;interactive&amp;lt;/code&amp;gt;: Allows for 4 CPU / 128G mem jobs up to 12 hours in length - can only be used via &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;salloc&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=cbcb&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=cbcb&amp;lt;/code&amp;gt; to be able to submit jobs to the CBCB partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexuscbcb00:~ ] $ srun --pty --ntasks=16 --mem=2000G --qos=highmem --partition=cbcb --account=cbcb --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@cbcb00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=cbcb QOS=highmem&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=cbcb AllocNode:Sid=nexuscbcb00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=cbcb00&lt;br /&gt;
   BatchHost=cbcb00&lt;br /&gt;
   NumNodes=1 NumCPUs=16 NumTasks=16 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=16,mem=2000G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=2000G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
CBCB still has its current [https://wiki.umiacs.umd.edu/cbcb-private/index.php/Storage storage] allocation in place.  All data filesystems that were available in the standalone CBCB cluster are also available in Nexus.  Please note about the change in your home directory in the migration section below.&lt;br /&gt;
&lt;br /&gt;
CBCB users can also request [[Nexus#Project_Allocations | Nexus project allocations]].&lt;br /&gt;
&lt;br /&gt;
= Migration =&lt;br /&gt;
&lt;br /&gt;
== Operating System / Software ==&lt;br /&gt;
CBCB&#039;s standalone cluster submission and compute nodes were running RHEL7.  [[Nexus]] is exclusively running RHEL8, so any software you may have compiled may need to be re-compiled to work correctly in this new environment.  The [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules CBCB module tree] for RHEL8 may not yet be fully populated with RHEL8 software.  If you do not see the modules you need, please reach out to the [https://wiki.umiacs.umd.edu/cbcb/index.php/CBCB_Software_Modules#Contact CBCB software maintainers].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Tron&amp;diff=13283</id>
		<title>Nexus/Tron</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Tron&amp;diff=13283"/>
		<updated>2026-06-29T17:19:33Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Tron partition is a subset of resources available in the [[Nexus]].  It was purchased using college-level funding for UMIACS and CSD faculty.&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes =&lt;br /&gt;
The partition contains 70 compute nodes with specs as detailed below.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Type&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node&lt;br /&gt;
! Memory per node&lt;br /&gt;
! GPUs per node&lt;br /&gt;
|-&lt;br /&gt;
|tron[00-05]&lt;br /&gt;
|A6000 GPU Node&lt;br /&gt;
|6&lt;br /&gt;
|32&lt;br /&gt;
|256GB&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|tron[06-45]&lt;br /&gt;
|A4000 GPU Node&lt;br /&gt;
|40&lt;br /&gt;
|16&lt;br /&gt;
|128GB&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|tron[46-61]&lt;br /&gt;
|A5000 GPU Node&lt;br /&gt;
|16&lt;br /&gt;
|48&lt;br /&gt;
|256GB&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|tron[62-69]&lt;br /&gt;
|RTX 2080 Ti GPU Node&lt;br /&gt;
|8&lt;br /&gt;
|32&lt;br /&gt;
|384GB&lt;br /&gt;
|8&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
|tron[00-69]&lt;br /&gt;
!Total&lt;br /&gt;
|70&lt;br /&gt;
|1856&lt;br /&gt;
|13410GB&lt;br /&gt;
|400&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the Tron partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* tron[00-05]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* tron[06-45]: Two 50GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* tron[46-61]: One 100GbE link per node. Half of the overall links for this set of nodes go to one switch in the pair, and the other half go to the other switch in the pair. These nodes do not have redundant links because the switches are currently at port capacity.&lt;br /&gt;
# One switch connected to the above pair of network switches via two 100GbE links, one to each switch in the pair for redundancy, serving the following compute nodes:&lt;br /&gt;
#* tron[62-69]: Two 10GbE links to the switch per node (increased bandwidth).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all Nexus [[Nexus#Scratch_Directories | scratch]], [[Nexus#Faculty_Allocations | faculty]], [[Nexus#Project_Allocations | project]], and [[Nexus#Datasets | dataset]] allocations first connects to a pair of intermediary switches before reaching the compute nodes. The last hop from the pair of intermediary switches to the first pair of switches mentioned on this page (same that nodes tron[00-44,46-61] are on) is via four 100GbE links, one for each combination of switches across each pairing, for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Tron&amp;diff=13282</id>
		<title>Nexus/Tron</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/Tron&amp;diff=13282"/>
		<updated>2026-06-29T17:19:16Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Tron partition is a subset of resources available in the [[Nexus]].  It was purchased using college-level funding for UMIACS and CSD faculty.&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes =&lt;br /&gt;
The partition contains 70 compute nodes with specs as detailed below.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Nodenames&lt;br /&gt;
! Type&lt;br /&gt;
! Quantity&lt;br /&gt;
! CPU cores per node&lt;br /&gt;
! Memory per node&lt;br /&gt;
! GPUs per node&lt;br /&gt;
|-&lt;br /&gt;
|tron[00-05]&lt;br /&gt;
|A6000 GPU Node&lt;br /&gt;
|6&lt;br /&gt;
|32&lt;br /&gt;
|256GB&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|tron[06-45]&lt;br /&gt;
|A4000 GPU Node&lt;br /&gt;
|40&lt;br /&gt;
|16&lt;br /&gt;
|128GB&lt;br /&gt;
|4&lt;br /&gt;
|-&lt;br /&gt;
|tron[46-61]&lt;br /&gt;
|A5000 GPU Node&lt;br /&gt;
|16&lt;br /&gt;
|48&lt;br /&gt;
|256GB&lt;br /&gt;
|8&lt;br /&gt;
|-&lt;br /&gt;
|tron[62-69]&lt;br /&gt;
|RTX 2080 Ti GPU Node&lt;br /&gt;
|8&lt;br /&gt;
|32&lt;br /&gt;
|384GB&lt;br /&gt;
|8&lt;br /&gt;
|- class=&amp;quot;sortbottom&amp;quot;&lt;br /&gt;
|tron[00-69]&lt;br /&gt;
!Total&lt;br /&gt;
|70&lt;br /&gt;
|1856&lt;br /&gt;
|13410GB&lt;br /&gt;
|400&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Network =&lt;br /&gt;
The network infrastructure supporting the Tron partition consists of:&lt;br /&gt;
# One pair of network switches connected to each other via dual 100GbE links for redundancy, serving the following compute nodes:&lt;br /&gt;
#* tron[00-05]: Two 100GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* tron[06-44]: Two 50GbE links per node, one to each switch in the pair (redundancy).&lt;br /&gt;
#* tron[46-61]: One 100GbE link per node. Half of the overall links for this set of nodes go to one switch in the pair, and the other half go to the other switch in the pair. These nodes do not have redundant links because the switches are currently at port capacity.&lt;br /&gt;
# One switch connected to the above pair of network switches via two 100GbE links, one to each switch in the pair for redundancy, serving the following compute nodes:&lt;br /&gt;
#* tron[62-69]: Two 10GbE links to the switch per node (increased bandwidth).&lt;br /&gt;
&lt;br /&gt;
The fileserver hosting all Nexus [[Nexus#Scratch_Directories | scratch]], [[Nexus#Faculty_Allocations | faculty]], [[Nexus#Project_Allocations | project]], and [[Nexus#Datasets | dataset]] allocations first connects to a pair of intermediary switches before reaching the compute nodes. The last hop from the pair of intermediary switches to the first pair of switches mentioned on this page (same that nodes tron[00-44,46-61] are on) is via four 100GbE links, one for each combination of switches across each pairing, for redundancy and increased bandwidth.&lt;br /&gt;
&lt;br /&gt;
For a broader overview of the network infrastructure supporting the Nexus cluster, please see [[Nexus/Network]].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/MBRC&amp;diff=13281</id>
		<title>Nexus/MBRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/MBRC&amp;diff=13281"/>
		<updated>2026-06-26T15:52:51Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Project Directories */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [https://mbrc.umd.edu MBRC]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusmbrc.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusmbrc00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusmbrc01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
The MBRC partition only has older nodes purchased by other labs/centers. The compute nodes are named &amp;lt;code&amp;gt;legacy##&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
MBRC users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &amp;lt;code&amp;gt;mbrc&amp;lt;/code&amp;gt; partition using the &amp;lt;code&amp;gt;mbrc&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the MBRC partition specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=mbrc&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=mbrc&amp;lt;/code&amp;gt; to be able to submit jobs to the MBRC partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexusmbrc00:~ ] $ srun --pty --ntasks=4 --mem=8G --qos=default --partition=mbrc --account=mbrc --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@legacy00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=mbrc QOS=default&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=mbrc AllocNode:Sid=nexusmbrc00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=legacy00&lt;br /&gt;
   BatchHost=legacy00&lt;br /&gt;
   NumNodes=1 NumCPUs=4 NumTasks=4 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=4,mem=8G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=8G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
In addition to [[Nexus#Storage | storage types available to all Nexus users]], MBRC users can also request MBRC project directories.&lt;br /&gt;
&lt;br /&gt;
== Project Directories ==&lt;br /&gt;
For this cluster we have decided to allocate network storage on a project by project basis. Jonathan Heagerty will be the point of contact as it pertains to allocating the requested/required storage for each project. As a whole, the MBRC Cluster has limited network storage and for this there will be limits to how much and how long network storage can be appropriated.&lt;br /&gt;
&lt;br /&gt;
If the requested storage size is significantly large relative to the total allotted amount, the request will be relayed from Jonathan Heagerty to the MBRC Cluster faculty for approval. Two other situations that would need approval from the MBRC Cluster faculty would be: To request an increase to a projects current storage allotment or To request a time extension for a projects storage.&lt;br /&gt;
&lt;br /&gt;
When making a request for storage please provide the following information when [[HelpDesk | contacting staff]]:&lt;br /&gt;
        - Name of user requesting storage:&lt;br /&gt;
                Example: jheager2&lt;br /&gt;
        - Name of project:&lt;br /&gt;
                Example: Foveated Rendering&lt;br /&gt;
        - Collaborators working on the project:&lt;br /&gt;
                Example: sidali&lt;br /&gt;
        - Storage size:&lt;br /&gt;
                Example: 1TB&lt;br /&gt;
        - Length of time for storage:&lt;br /&gt;
                Example: 6-8 months&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/MBRC&amp;diff=13280</id>
		<title>Nexus/MBRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/MBRC&amp;diff=13280"/>
		<updated>2026-06-26T15:52:40Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [https://mbrc.umd.edu MBRC]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusmbrc.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusmbrc00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusmbrc01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
The MBRC partition only has older nodes purchased by other labs/centers. The compute nodes are named &amp;lt;code&amp;gt;legacy##&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
MBRC users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &amp;lt;code&amp;gt;mbrc&amp;lt;/code&amp;gt; partition using the &amp;lt;code&amp;gt;mbrc&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the MBRC partition specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=mbrc&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=mbrc&amp;lt;/code&amp;gt; to be able to submit jobs to the MBRC partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexusmbrc00:~ ] $ srun --pty --ntasks=4 --mem=8G --qos=default --partition=mbrc --account=mbrc --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@legacy00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=mbrc QOS=default&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=mbrc AllocNode:Sid=nexusmbrc00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=legacy00&lt;br /&gt;
   BatchHost=legacy00&lt;br /&gt;
   NumNodes=1 NumCPUs=4 NumTasks=4 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=4,mem=8G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=8G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
In addition to [[Nexus#Storage | storage types available to all Nexus users]], MBRC users can also request MBRC project directories.&lt;br /&gt;
&lt;br /&gt;
== Project Directories ==&lt;br /&gt;
For this cluster we have decided to allocate network storage on a project by project basis. Jonathan Heagerty will be the point of contact as it pertains to allocating the requested/required storage for each project. As a whole, the MBRC Cluster has limited network storage and for this there will be limits to how much and how long network storage can be appropriated.&lt;br /&gt;
&lt;br /&gt;
If the requested storage size is significantly large relative to the total allotted amount, the request will be relayed from Jonathan Heagerty to the MBRC Cluster faculty for approval. Two other situations that would need approval from the MBRC Cluster faculty would be: To request an increase to a projects current storage allotment or To request a time extension for a projects storage.&lt;br /&gt;
&lt;br /&gt;
When making a request for storage please provide the following information when [[HelpDesk | contacting staff]]:&lt;br /&gt;
        - Name of user requesting storage:&lt;br /&gt;
                Example: jheager2&lt;br /&gt;
        - Name of project:&lt;br /&gt;
                Example: Foveated Rendering&lt;br /&gt;
        - Collaborators working on the project:&lt;br /&gt;
                Example: Sida Li&lt;br /&gt;
        - Storage size:&lt;br /&gt;
                Example: 1TB&lt;br /&gt;
        - Length of time for storage:&lt;br /&gt;
                Example: 6-8 months&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/MBRC&amp;diff=13279</id>
		<title>Nexus/MBRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/MBRC&amp;diff=13279"/>
		<updated>2026-06-26T14:14:03Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The compute nodes from [https://mbrc.umd.edu MBRC]&#039;s previous standalone cluster have folded into [[Nexus]] as of mid 2023.&lt;br /&gt;
&lt;br /&gt;
The Nexus cluster already has a large pool of compute resources made possible through college-level funding for UMIACS and CSD faculty. Details on common nodes already in the cluster (Tron partition) can be found [[Nexus/Tron | here]].&lt;br /&gt;
&lt;br /&gt;
Please [[HelpDesk | contact staff]] with any questions or concerns.&lt;br /&gt;
&lt;br /&gt;
= Submission Nodes =&lt;br /&gt;
You can [[SSH]] to &amp;lt;code&amp;gt;nexusmbrc.umiacs.umd.edu&amp;lt;/code&amp;gt; to log in to a submission node.&lt;br /&gt;
&lt;br /&gt;
If you store something in a local filesystem directory (/tmp, /scratch0) on one of the two submission nodes, you will need to connect to that same submission node to access it later. The actual submission nodes are:&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusmbrc00.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;nexusmbrc01.umiacs.umd.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compute Nodes = &lt;br /&gt;
The MBRC partition only has older nodes purchased by other labs/centers. The compute nodes are named &amp;lt;code&amp;gt;legacy##&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= QoS = &lt;br /&gt;
MBRC users have access to all of the [[Nexus#Quality_of_Service_.28QoS.29 | standard job QoSes]] in the &amp;lt;code&amp;gt;mbrc&amp;lt;/code&amp;gt; partition using the &amp;lt;code&amp;gt;mbrc&amp;lt;/code&amp;gt; account.&lt;br /&gt;
&lt;br /&gt;
The additional job QoSes for the MBRC partition specifically are:&lt;br /&gt;
* &amp;lt;code&amp;gt;huge-long&amp;lt;/code&amp;gt;: Allows for longer jobs using higher overall resources.&lt;br /&gt;
&lt;br /&gt;
Please note that the partition has a &amp;lt;code&amp;gt;GrpTRES&amp;lt;/code&amp;gt; limit of 100% of the available cores/RAM on the partition-specific nodes in aggregate plus 50% of the available cores/RAM on legacy## nodes in aggregate, so your job may need to wait if all available cores/RAM (or GPUs) are in use.&lt;br /&gt;
&lt;br /&gt;
= Jobs =&lt;br /&gt;
You will need to specify &amp;lt;code&amp;gt;--partition=mbrc&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=mbrc&amp;lt;/code&amp;gt; to be able to submit jobs to the MBRC partition. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[username@nexusmbrc00:~ ] $ srun --pty --ntasks=4 --mem=8G --qos=default --partition=mbrc --account=mbrc --time 1-00:00:00 bash&lt;br /&gt;
srun: job 218874 queued and waiting for resources&lt;br /&gt;
srun: job 218874 has been allocated resources&lt;br /&gt;
[username@mbrc00:~ ] $ scontrol show job 218874&lt;br /&gt;
JobId=218874 JobName=bash&lt;br /&gt;
   UserId=username(1000) GroupId=username(21000) MCS_label=N/A&lt;br /&gt;
   Priority=897 Nice=0 Account=mbrc QOS=default&lt;br /&gt;
   JobState=RUNNING Reason=None Dependency=(null)&lt;br /&gt;
   Requeue=1 Restarts=0 BatchFlag=0 Reboot=0 ExitCode=0:0&lt;br /&gt;
   RunTime=00:00:06 TimeLimit=1-00:00:00 TimeMin=N/A&lt;br /&gt;
   SubmitTime=2022-11-18T11:13:56 EligibleTime=2022-11-18T11:13:56&lt;br /&gt;
   AccrueTime=2022-11-18T11:13:56&lt;br /&gt;
   StartTime=2022-11-18T11:13:56 EndTime=2022-11-19T11:13:56 Deadline=N/A&lt;br /&gt;
   PreemptEligibleTime=2022-11-18T11:13:56 PreemptTime=None&lt;br /&gt;
   SuspendTime=None SecsPreSuspend=0 LastSchedEval=2022-11-18T11:13:56 Scheduler=Main&lt;br /&gt;
   Partition=mbrc AllocNode:Sid=nexusmbrc00:25443&lt;br /&gt;
   ReqNodeList=(null) ExcNodeList=(null)&lt;br /&gt;
   NodeList=mbrc00&lt;br /&gt;
   BatchHost=mbrc00&lt;br /&gt;
   NumNodes=1 NumCPUs=4 NumTasks=4 CPUs/Task=1 ReqB:S:C:T=0:0:*:*&lt;br /&gt;
   TRES=cpu=4,mem=8G,node=1,billing=2266&lt;br /&gt;
   Socks/Node=* NtasksPerN:B:S:C=0:0:*:* CoreSpec=*&lt;br /&gt;
   MinCPUsNode=1 MinMemoryNode=8G MinTmpDiskNode=0&lt;br /&gt;
   Features=(null) DelayBoot=00:00:00&lt;br /&gt;
   OverSubscribe=OK Contiguous=0 Licenses=(null) Network=(null)&lt;br /&gt;
   Command=bash&lt;br /&gt;
   WorkDir=/nfshomes/username&lt;br /&gt;
   Power=&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
In addition to [[Nexus#Storage | storage types available to all Nexus users]], MBRC users can also request MBRC project directories.&lt;br /&gt;
&lt;br /&gt;
== Project Directories ==&lt;br /&gt;
For this cluster we have decided to allocate network storage on a project by project basis. Jonathan Heagerty will be the point of contact as it pertains to allocating the requested/required storage for each project. As a whole, the MBRC Cluster has limited network storage and for this there will be limits to how much and how long network storage can be appropriated.&lt;br /&gt;
&lt;br /&gt;
If the requested storage size is significantly large relative to the total allotted amount, the request will be relayed from Jonathan Heagerty to the MBRC Cluster faculty for approval. Two other situations that would need approval from the MBRC Cluster faculty would be: To request an increase to a projects current storage allotment or To request a time extension for a projects storage.&lt;br /&gt;
&lt;br /&gt;
When making a request for storage please provide the following information when [[HelpDesk | contacting staff]]:&lt;br /&gt;
        - Name of user requesting storage:&lt;br /&gt;
                Example: jheager2&lt;br /&gt;
        - Name of project:&lt;br /&gt;
                Example: Foveated Rendering&lt;br /&gt;
        - Collaborators working on the project:&lt;br /&gt;
                Example: Sida Li&lt;br /&gt;
        - Storage size:&lt;br /&gt;
                Example: 1TB&lt;br /&gt;
        - Length of time for storage:&lt;br /&gt;
                Example: 6-8 months&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13278</id>
		<title>MonthlyMaintenanceWindow</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13278"/>
		<updated>2026-06-19T02:32:54Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[HelpDesk | UMIACS staff]] takes a monthly maintenance window to patch and reboot all UMIACS-supported hosts and services.  This provides a way for staff to ensure security updates are installed and applied on the numerous different platforms and appliances that UMIACS runs.&lt;br /&gt;
&lt;br /&gt;
The window for each month is calculated by adding 9 days to [https://en.wikipedia.org/wiki/Patch_Tuesday Microsoft&#039;s Patch Tuesday] to allow for enough time to marshal patches released that month from Microsoft, Red Hat, Apple, and other OS and application vendors and have enough time to get systems prepared to reboot.  This translates to the window being on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month.  The window lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
[[Nexus]] will always have a reservation in place from 4:45pm-8pm on the day of the upcoming window to prevent jobs from being scheduled on compute nodes. The 15-minute addition before the start of the window is to allow jobs to fully end. Any job submitted before the reservation begins that has a time limit that would run into the reservation will be held until at least the end of the reservation - 8pm on the day of the window. This is to prevent issues with jobs failing to end properly causing delays in work we have scheduled during the window.&lt;br /&gt;
&lt;br /&gt;
A list of upcoming maintenance windows is as follows, with the next one in bold. Again, the window is on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month, and lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;July 23rd 2026&#039;&#039;&#039;&lt;br /&gt;
* August 20th 2026&lt;br /&gt;
* September 17th 2026&lt;br /&gt;
* October 22nd 2026&lt;br /&gt;
* November 19th 2026&lt;br /&gt;
* December 17th 2026&lt;br /&gt;
&lt;br /&gt;
==Archives==&lt;br /&gt;
* January 17th 2013 - BEGIN time of 8pm-12am for this window through February 20th 2020&lt;br /&gt;
* February 21st 2013&lt;br /&gt;
* March 21st 2013&lt;br /&gt;
* April 18th 2013&lt;br /&gt;
* May 23rd 2013&lt;br /&gt;
* June 20th 2013&lt;br /&gt;
* July 18th 2013&lt;br /&gt;
* August 22nd 2013&lt;br /&gt;
* September 19th 2013&lt;br /&gt;
* October 17th 2013&lt;br /&gt;
* December 19th 2013&lt;br /&gt;
* January 23rd 2014&lt;br /&gt;
* February 20th 2014&lt;br /&gt;
* March 20th 2014&lt;br /&gt;
* April 17th 2014&lt;br /&gt;
* May 22nd 2014&lt;br /&gt;
* June 19th 2014&lt;br /&gt;
* July 17th 2014&lt;br /&gt;
* August 21st 2014&lt;br /&gt;
* September 18th 2014&lt;br /&gt;
* October 23rd 2014&lt;br /&gt;
* November 20th 2014&lt;br /&gt;
* December 18th 2014&lt;br /&gt;
* January 22nd 2015&lt;br /&gt;
* February 19th 2015&lt;br /&gt;
* March 19th 2015&lt;br /&gt;
* May 21st 2015&lt;br /&gt;
* June 18th 2015&lt;br /&gt;
* July 23rd 2015&lt;br /&gt;
* August 20th 2015&lt;br /&gt;
* September 17th 2015&lt;br /&gt;
* October 22nd 2015&lt;br /&gt;
* November 19th 2015&lt;br /&gt;
* December 17th 2015&lt;br /&gt;
* January 21st 2016&lt;br /&gt;
* February 18th 2016&lt;br /&gt;
* March 12th 2016 (Adjusted date for AVW power outage)&lt;br /&gt;
* April 21st 2016&lt;br /&gt;
* May 19th 2016&lt;br /&gt;
* June 23rd 2016&lt;br /&gt;
* July 21st 2016&lt;br /&gt;
* August 18th 2016&lt;br /&gt;
* September 22nd 2016&lt;br /&gt;
* October 20th 2016&lt;br /&gt;
* November 17th 2016&lt;br /&gt;
* December 22nd 2016&lt;br /&gt;
* January 19th 2017&lt;br /&gt;
* February 23rd 2017&lt;br /&gt;
* March 23rd 2017&lt;br /&gt;
* April 20th 2017&lt;br /&gt;
* May 18th 2017&lt;br /&gt;
* June 22nd 2017&lt;br /&gt;
* July 20th 2017&lt;br /&gt;
* August 17th 2017&lt;br /&gt;
* September 21st 2017&lt;br /&gt;
* October 19th 2017&lt;br /&gt;
* December 21st 2017&lt;br /&gt;
* January 18th 2018&lt;br /&gt;
* February 22nd 2018&lt;br /&gt;
* March 22nd 2018&lt;br /&gt;
* April 19th 2018&lt;br /&gt;
* May 17th 2018&lt;br /&gt;
* June 21st 2018&lt;br /&gt;
* July 19th 2018&lt;br /&gt;
* August 23rd 2018&lt;br /&gt;
* September 20th 2018&lt;br /&gt;
* October 18th 2018&lt;br /&gt;
* December 20th 2018&lt;br /&gt;
* January 24th 2019&lt;br /&gt;
* February 21st 2019&lt;br /&gt;
* April 18th 2019&lt;br /&gt;
* May 23rd 2019&lt;br /&gt;
* June 20th 2019&lt;br /&gt;
* July 18th 2019&lt;br /&gt;
* August 22nd 2019&lt;br /&gt;
* September 19th 2019&lt;br /&gt;
* October 17th 2019&lt;br /&gt;
* November 21st 2019&lt;br /&gt;
* December 19th 2019&lt;br /&gt;
* January 23rd 2020&lt;br /&gt;
* February 20th 2020&lt;br /&gt;
* April 23rd 2020 - BEGIN time of 5pm-7pm for this window through August 19th 2021&lt;br /&gt;
* June 18th 2020&lt;br /&gt;
* July 23rd 2020&lt;br /&gt;
* August 20th 2020&lt;br /&gt;
* September 17th 2020&lt;br /&gt;
* October 22nd 2020&lt;br /&gt;
* November 19th 2020&lt;br /&gt;
* December 17th 2020&lt;br /&gt;
* January 21st 2021&lt;br /&gt;
* February 18th 2021&lt;br /&gt;
* March 25th 2021 (Adjusted date for extended Spring Break)&lt;br /&gt;
* April 22nd 2021&lt;br /&gt;
* May 20th 2021&lt;br /&gt;
* June 17th 2021&lt;br /&gt;
* July 22nd 2021&lt;br /&gt;
* August 19th 2021&lt;br /&gt;
* September 23rd 2021 - BEGIN time of 5pm-8pm for this window and all others below&lt;br /&gt;
* October 21st 2021&lt;br /&gt;
* November 18th 2021&lt;br /&gt;
* January 20th 2022&lt;br /&gt;
* February 17th 2022&lt;br /&gt;
* March 24th 2022 (Adjusted date for Spring Break)&lt;br /&gt;
* April 21st 2022&lt;br /&gt;
* May 19th 2022&lt;br /&gt;
* June 23rd 2022&lt;br /&gt;
* July 21st 2022&lt;br /&gt;
* August 18th 2022&lt;br /&gt;
* September 22nd 2022&lt;br /&gt;
* October 20th 2022&lt;br /&gt;
* November 17th 2022&lt;br /&gt;
* January 19th 2023&lt;br /&gt;
* February 23rd 2023&lt;br /&gt;
* April 20th 2023&lt;br /&gt;
* May 18th 2023&lt;br /&gt;
* June 22nd 2023&lt;br /&gt;
* July 20th 2023&lt;br /&gt;
* August 17th 2023&lt;br /&gt;
* September 21st 2023&lt;br /&gt;
* October 19th 2023&lt;br /&gt;
* December 20th 2023 (Adjusted date for early Winter Break)&lt;br /&gt;
* January 18th 2024&lt;br /&gt;
* February 22nd 2024&lt;br /&gt;
* March 21st 2024&lt;br /&gt;
* April 18th 2024&lt;br /&gt;
* May 23th 2024&lt;br /&gt;
* June 20th 2024&lt;br /&gt;
* July 18th 2024&lt;br /&gt;
* August 22nd 2024&lt;br /&gt;
* September 19th 2024&lt;br /&gt;
* October 17th 2024&lt;br /&gt;
* November 21st 2024&lt;br /&gt;
* December 19th 2024&lt;br /&gt;
* January 23rd 2025&lt;br /&gt;
* February 20th 2025&lt;br /&gt;
* March 20th 2025&lt;br /&gt;
* April 17th 2025&lt;br /&gt;
* May 22nd 2025&lt;br /&gt;
* June 19th 2025&lt;br /&gt;
* July 17th 2025&lt;br /&gt;
* August 21st 2025&lt;br /&gt;
* September 18th 2025&lt;br /&gt;
* October 23rd 2025&lt;br /&gt;
* November 20th 2025&lt;br /&gt;
* December 18th 2025&lt;br /&gt;
* January 22nd 2026&lt;br /&gt;
* February 19th 2026&lt;br /&gt;
* March 19th 2026&lt;br /&gt;
* April 23rd 2026&lt;br /&gt;
* May 28th 2026 (Adjusted date for CIO-imposed network change freeze)&lt;br /&gt;
* June 18th 2026&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Windows_Patch_Management&amp;diff=13277</id>
		<title>Windows Patch Management</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Windows_Patch_Management&amp;diff=13277"/>
		<updated>2026-06-12T15:35:18Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;UMIACS uses Windows&#039; built-in Windows Update mechanism to patch the Windows operating system, Windows device firmware and drivers, and other Microsoft products that Microsoft uses Windows Update to push updates for, in tandem with a software distribution tool called [https://umd-dit.atlassian.net/wiki/spaces/DMS/pages/45285463/Patch+My+PC Patch My PC] that operates through the Division of IT&#039;s managed [https://umd-dit.atlassian.net/wiki/spaces/DMS/pages/45285467/Intune Intune] service to patch third party applications.&lt;br /&gt;
&lt;br /&gt;
==Windows Update==&lt;br /&gt;
* &#039;&#039;&#039;Desktops&#039;&#039;&#039; will run updates available through Windows Update daily between 3am and 4am US Eastern.&lt;br /&gt;
* &#039;&#039;&#039;Laptops&#039;&#039;&#039; will run updates available through Windows Update at any time they are on and connected to the internet.&lt;br /&gt;
&lt;br /&gt;
The only updates available through Windows Update that should require computer restarts are Windows operating system monthly rollups, released on [https://en.wikipedia.org/wiki/Patch_Tuesday Microsoft&#039;s Patch Tuesday], new [[WindowsServicing | feature updates]], when they are pushed by us annually, and some device firmware or driver updates.&lt;br /&gt;
&lt;br /&gt;
After a update that requires a reboot is installed on your computer, you will receive a notification stating that your machine needs to be restarted in the next 7 days. You can choose either to restart immediately or to schedule the restart. If you do not restart by the deadline, your computer will automatically restart no more than a day after the deadline is exceeded.&lt;br /&gt;
&lt;br /&gt;
==Patch My PC==&lt;br /&gt;
Patches are deployed as they come out for the Patch My PC catalog. They should install automatically and require little to no input.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13276</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13276"/>
		<updated>2026-06-10T16:05:53Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than Friday 08/21/2026 at 5pm.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames will be scheduled for upgrade individually, when all of the compute nodes associated with the same lab/center have been upgraded. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when applicable. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on the &#039;00&#039; submission node in a pairing that you want to keep, please ensure you copy it to the &#039;01&#039; submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to the &#039;00&#039; node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
Due to the large number of compute nodes and the desire to not interrupt running jobs, we are not generally able to schedule each specific compute node upgrade on a specific date. If you find that a specific node is unavailable to schedule jobs on, you can run the command &amp;lt;code&amp;gt;sinfo --list-reasons --long&amp;lt;/code&amp;gt; on a submission node and look to see if the node is in the list with the text &amp;quot;RHEL9 upgrade&amp;quot; - if this is present, the upgrade for that node is underway.&lt;br /&gt;
&lt;br /&gt;
We will generally be prioritizing upgrades for nodes based on how available they are across various partitions; nodes that are only available in partitions that contain large numbers of users for a lab/center, e.g., cbcb, clip, cml-dpart, gamma, vulcan-ampere, vulcan-dpart, etc., and corresponding &amp;quot;scavenger&amp;quot; named partitions, will be prioritized over nodes that are only or are also available in faculty-specific / limited-node partitions. All nodes in the tron partition will also generally be prioritized.&lt;br /&gt;
&lt;br /&gt;
If you are a faculty member authoritative for your own partition or a small group&#039;s limited-node partition and have scheduling concerns for the nodes in these partitions, please [[HelpDesk | contact staff]] ASAP to let us know about these concerns and we will make our best effort to accommodate them.&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please begin transitioning your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 has already been populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;br /&gt;
&lt;br /&gt;
===SLURM Scheduling===&lt;br /&gt;
If you want or need to schedule a job on only nodes running RHEL8 (or RHEL9, once you have validated whatever is relevant), you can use the submission arguments &amp;lt;code&amp;gt;--prefer=rhel#&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;--constraint=rhel#&amp;lt;/code&amp;gt; in your job arguments to specify this, where # is replaced by the OS version number. The --prefer argument is a soft limitation on which nodes the job can be scheduled on and the --constraint argument is a hard limitation, i.e., if you use the argument &amp;lt;code&amp;gt;--prefer=rhel8&amp;lt;/code&amp;gt; but there are no RHEL8 nodes available at present (with your other submission arguments also satisfied) in the partition you are submitting to, the job will be scheduled on an appropriate RHEL9 node if that would result in an earlier (or instantaneous) start time.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13275</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13275"/>
		<updated>2026-06-10T15:54:38Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than Friday 08/21/2026 at 5pm.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames will be scheduled for upgrade individually, when all of the compute nodes associated with the same lab/center have been upgraded. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when applicable. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on either submission node in a pairing that you want to keep, please ensure you copy it to the other submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to each node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
Due to the large number of compute nodes and the desire to not interrupt running jobs, we are not generally able to schedule each specific compute node upgrade on a specific date. If you find that a specific node is unavailable to schedule jobs on, you can run the command &amp;lt;code&amp;gt;sinfo --list-reasons --long&amp;lt;/code&amp;gt; on a submission node and look to see if the node is in the list with the text &amp;quot;RHEL9 upgrade&amp;quot; - if this is present, the upgrade for that node is underway.&lt;br /&gt;
&lt;br /&gt;
We will generally be prioritizing upgrades for nodes based on how available they are across various partitions; nodes that are only available in partitions that contain large numbers of users for a lab/center, e.g., cbcb, clip, cml-dpart, gamma, vulcan-ampere, vulcan-dpart, etc., and corresponding &amp;quot;scavenger&amp;quot; named partitions, will be prioritized over nodes that are only or are also available in faculty-specific / limited-node partitions. All nodes in the tron partition will also generally be prioritized.&lt;br /&gt;
&lt;br /&gt;
If you are a faculty member authoritative for your own partition or a small group&#039;s limited-node partition and have scheduling concerns for the nodes in these partitions, please [[HelpDesk | contact staff]] ASAP to let us know about these concerns and we will make our best effort to accommodate them.&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please begin transitioning your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 has already been populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;br /&gt;
&lt;br /&gt;
===SLURM Scheduling===&lt;br /&gt;
If you want or need to schedule a job on only nodes running RHEL8 (or RHEL9, once you have validated whatever is relevant), you can use the submission arguments &amp;lt;code&amp;gt;--prefer=rhel#&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;--constraint=rhel#&amp;lt;/code&amp;gt; in your job arguments to specify this, where # is replaced by the OS version number. The --prefer argument is a soft limitation on which nodes the job can be scheduled on and the --constraint argument is a hard limitation, i.e., if you use the argument &amp;lt;code&amp;gt;--prefer=rhel8&amp;lt;/code&amp;gt; but there are no RHEL8 nodes available at present (with your other submission arguments also satisfied) in the partition you are submitting to, the job will be scheduled on an appropriate RHEL9 node if that would result in an earlier (or instantaneous) start time.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus&amp;diff=13274</id>
		<title>Nexus</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus&amp;diff=13274"/>
		<updated>2026-06-01T17:21:55Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Note|UMIACS Technical Staff has begun the process of upgrading the operating system version on all Nexus cluster nodes as of 06/01/2026. Please see [[Nexus/ClusterOSUpgrade]] for more information.}}&lt;br /&gt;
&lt;br /&gt;
The Nexus is the combined scheduler of resources in UMIACS.  The resource manager for Nexus is [[SLURM]].  Resources are arranged into partitions where users are able to schedule computational jobs.  Users are arranged into a number of SLURM accounts based on faculty, lab, or center investments.&lt;br /&gt;
&lt;br /&gt;
= Getting Started =&lt;br /&gt;
All accounts in UMIACS are sponsored.  If you don&#039;t already have a UMIACS account, please see [[Accounts]] for information on getting one.  You need a full UMIACS account - not a [[Accounts/Collaborator | collaborator account]] - in order to access Nexus.&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
Your access to submission nodes (alternatively called login nodes) for Nexus computational resources is determined by your account sponsor&#039;s department, center, or lab affiliation.  You can log into the [https://intranet.umiacs.umd.edu/directory/cr/ UMIACS Directory CR application] and select the Computational Resource (CR) in the list that has the prefix &amp;lt;code&amp;gt;nexus&amp;lt;/code&amp;gt;.  The Hosts section lists your available submission nodes - generally a pair of nodes with hostnames of the format &amp;lt;tt&amp;gt;nexus&amp;lt;department, lab, or center abbreviation&amp;gt;[00,01]&amp;lt;/tt&amp;gt;, e.g., &amp;lt;tt&amp;gt;nexusgroup00&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;nexusgroup01&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Once you have identified your submission nodes, you can [[SSH]] into them [https://itsupport.umd.edu/itsupport?id=kb_article_view&amp;amp;sysparm_article=KB0016076 after connecting to UMD&#039;s GlobalProtect VPN].  From there, you are able to submit to the cluster via our [[SLURM]] workload manager.  You need to make sure that your submitted jobs have the correct account, partition, and qos.&lt;br /&gt;
&lt;br /&gt;
Please read our [[Nexus/Submission_Node_Policy|Submission Node Policy]] for guidance on appropriate usage of a submission node. If a submission node becomes unresponsive due to disregarding this policy, &amp;lt;b&amp;gt;we may kill user processes on these nodes to resolve the issue&amp;lt;/b&amp;gt;. We reserve the right to take action on users who repeatedly cause issues on submission nodes.&lt;br /&gt;
&lt;br /&gt;
== Jobs ==&lt;br /&gt;
[[SLURM]] jobs are [[SLURM/JobSubmission | submitted]] by either &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; depending if you are doing an interactive job or batch job, respectively.  You need to provide the where/how/who to run the job and specify the resources you need to run with.&lt;br /&gt;
&lt;br /&gt;
For the who/where/how, you may be required to specify &amp;lt;code&amp;gt;--account&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--partition&amp;lt;/code&amp;gt;, and/or &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; (respectively) to be able to adequately submit jobs to the Nexus.&lt;br /&gt;
&lt;br /&gt;
For resources, you may need to specify &amp;lt;code&amp;gt;--time&amp;lt;/code&amp;gt; for time, &amp;lt;code&amp;gt;--cpus-per-task&amp;lt;/code&amp;gt; for CPUs, &amp;lt;code&amp;gt;--mem&amp;lt;/code&amp;gt; for RAM, and &amp;lt;code&amp;gt;--gres=gpu&amp;lt;/code&amp;gt; for GPUs in your submission arguments to meet your requirements.  There are defaults for all four; if you don&#039;t specify something, you will get the default value for that resource, which is minimal (e.g., by default, NO GPUs are included if you do not specify &amp;lt;code&amp;gt;--gres=gpu&amp;lt;/code&amp;gt;).  For more information about submission flags for GPU resources, see [[SLURM/JobSubmission#Requesting_GPUs | here]].  You may also use &amp;lt;code&amp;gt;--ntasks&amp;lt;/code&amp;gt; to specify the number of parallel processes to run, with each task having its own set of the resources specified above. You can run &amp;lt;code&amp;gt;man srun&amp;lt;/code&amp;gt; on your submission node for a complete list of available submission arguments.&lt;br /&gt;
&lt;br /&gt;
For a list of available GPU types on Nexus and their specs, please see [[Nexus/GPUs]].&lt;br /&gt;
&lt;br /&gt;
For details on how the network for Nexus is architected, please see [[Nexus/Network]]. This can be important if you wish to optimize performance of your jobs.&lt;br /&gt;
&lt;br /&gt;
=== Interactive ===&lt;br /&gt;
Once logged into a submission node, you can run simple interactive jobs.  If your session is interrupted from the submission node, the job will be killed.  As such, we encourage use of a terminal multiplexer such as [[Tmux]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ srun --pty --cpus-per-task=4 --mem=2gb --gres=gpu:1 bash&lt;br /&gt;
srun: Job account was unset; set to user default of &#039;nexus&#039;&lt;br /&gt;
srun: Job partition was unset; set to cluster default of &#039;tron&#039;&lt;br /&gt;
srun: Job QoS was unset; set to association default of &#039;default&#039;&lt;br /&gt;
srun: Job time limit was unset; set to partition default of 60 minutes&lt;br /&gt;
srun: job 1 queued and waiting for resources&lt;br /&gt;
srun: job 1 has been allocated resources&lt;br /&gt;
$ hostname&lt;br /&gt;
tron62.umiacs.umd.edu&lt;br /&gt;
$ nvidia-smi -L&lt;br /&gt;
GPU 0: NVIDIA GeForce RTX 2080 Ti (UUID: GPU-daad6a04-a2ce-1183-ce53-b267048f750a)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Batch ===&lt;br /&gt;
Batch jobs are scheduled with a script file with an optional ability to embed job scheduling parameters via variables that are defined by &amp;lt;code&amp;gt;#SBATCH&amp;lt;/code&amp;gt; lines at the top of the file.  You can find some examples in our [[SLURM/JobSubmission]] documentation.&lt;br /&gt;
&lt;br /&gt;
= Partitions = &lt;br /&gt;
The SLURM resource manager uses partitions to act as job queues which can restrict size, time and user limits. The Nexus has a number of different partitions of resources. Different Centers, Labs, and Faculty are able to invest in computational resources that are restricted to approved users through these partitions.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by all non-[[ClassAccounts |class account]] users:&#039;&#039;&#039;&lt;br /&gt;
* [[Nexus/Tron]] - Pool of resources available to all non-class accounts sponsored by either UMIACS or CSD faculty.&lt;br /&gt;
* Scavenger - [https://slurm.schedmd.com/preempt.html Preemption] partition that contains [https://en.wikipedia.org/wiki/X86-64 x86_64] architecture nodes from multiple other partitions. More resources are available to schedule simultaneously than in other partitions, however jobs are subject to preemption rules. You are responsible for ensuring your jobs handle this preemption correctly. The SLURM scheduler will simply restart a preempted job with the same submission arguments when it is available to run again. For an overview of things you can check within scripts to determine if your job was preempted/resumed, see [[SLURM/Preemption]].&lt;br /&gt;
* Scavenger (aarch64) - Preemption partition identical in design to &amp;lt;tt&amp;gt;scavenger&amp;lt;/tt&amp;gt;, but only contains [https://en.wikipedia.org/wiki/AArch64 aarch64] architecture nodes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by [[ClassAccounts]]:&#039;&#039;&#039;&lt;br /&gt;
* [[ClassAccounts#Cluster_Usage | Class]] - Pool of resources available to class accounts sponsored by either UMIACS or CSD faculty.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by specific lab/center users:&#039;&#039;&#039;&lt;br /&gt;
* [[Nexus/CBCB]] - CBCB lab pool available for CBCB lab members.&lt;br /&gt;
* [[Nexus/CLIP]] - CLIP lab pool available for CLIP lab members.&lt;br /&gt;
* [[Nexus/CML]] - CML lab pool available for CML lab members.&lt;br /&gt;
* [[Nexus/GAMMA]] - GAMMA lab pool available for GAMMA lab members.&lt;br /&gt;
* [[Nexus/MBRC]] - MBRC lab pool available for MBRC lab members.&lt;br /&gt;
* [[Nexus/MC2]] - MC2 lab pool available for MC2 lab members.&lt;br /&gt;
* [[Nexus/QuICS]] - QuICS lab pool available for QuICS lab members.&lt;br /&gt;
* [[Nexus/Vulcan]] - Vulcan lab pool available for Vulcan lab members.&lt;br /&gt;
&lt;br /&gt;
You can view the partitions that you have access to by using the &amp;lt;code&amp;gt;show_partitions&amp;lt;/code&amp;gt; command. By default, the command will show only the partitions that are available to you.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partitions&lt;br /&gt;
                    Name           AllowAccounts                       AllowQos    MaxNodes                        Nodes&lt;br /&gt;
------------------------ ----------------------- ------------------------------ ----------- ----------------------------               &lt;br /&gt;
               scavenger               scavenger                      scavenger   UNLIMITED                brigid[16-19]                                                                                                             &lt;br /&gt;
                                                                                                             cbcb[00-29]                                                                                                             &lt;br /&gt;
                                                                                                             clip[00-13]                                                                                               &lt;br /&gt;
                                                                                               cml[00,02-13,15-28,30-33]                                                                                                     &lt;br /&gt;
                                                                                                     cmlcpu[00-04,06-07]                                                                                                         &lt;br /&gt;
                                                                                                         gammagpu[00-21]                                                                                               &lt;br /&gt;
                                                                                               legacy[00-11,13-28,30-36]                                                                                                        &lt;br /&gt;
                                                                                                        legacygpu[00-07]                                                                                                                 &lt;br /&gt;
                                                                                                                 quics00                                                                                                       &lt;br /&gt;
                                                                                                       tron[00-44,46-69]                                                                                                           &lt;br /&gt;
                                                                                                           vulcan[00-45]&lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
       scavenger-aarch64               scavenger              scavenger-aarch64   UNLIMITED                 oasis[00-39]&lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------                    &lt;br /&gt;
                    tron                   nexus                        default   UNLIMITED            tron[00-44,46-69]                                                                           &lt;br /&gt;
                                                                           high                                                                                                                  &lt;br /&gt;
                                                                         medium                                         &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see information for all of the partitions, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_partitions --all&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partitions --all&lt;br /&gt;
                    Name           AllowAccounts                       AllowQos    MaxNodes                        Nodes&lt;br /&gt;
------------------------ ----------------------- ------------------------------ ----------- ----------------------------                    &lt;br /&gt;
                    cbcb                    cbcb                        default   UNLIMITED            cbcb[00-20,22-29]                                                                         &lt;br /&gt;
                                                                         medium                legacy[00-11,13-28,30-36]                                                                           &lt;br /&gt;
                                                                           high                                                                                                               &lt;br /&gt;
                                                                      huge-long                                                                                                                 &lt;br /&gt;
                                                                        highmem                                         &lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
               cbcb-heng               cbcb-heng                        default   UNLIMITED                  cbcb[26-29]                                                                         &lt;br /&gt;
                                                                         medium                                                                                                                     &lt;br /&gt;
                                                                           high                                                                                                               &lt;br /&gt;
                                                                      huge-long                                                                                                                 &lt;br /&gt;
                                                                        highmem                                         &lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------        &lt;br /&gt;
        cbcb-interactive                    cbcb                    interactive   UNLIMITED                       cbcb21&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Quality of Service (QoS) =&lt;br /&gt;
SLURM uses Quality of Service (QoS) both to provide limits on job sizes (termed by us as &amp;quot;job QoS&amp;quot;) as well as to limit resources used by all jobs running in a partition, either per user or per group (termed by us as &amp;quot;partition QoS&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
=== Job QoS ===&lt;br /&gt;
Job QoS are used to provide limits on the size of job that you can run. You should try to allocate only the resources your job actually needs, as resources that each of your jobs schedules are counted against your [[SLURM/Priority#Fair-share | fair-share priority]] in the future.&lt;br /&gt;
* default - Default job QoS. Limited to 4 CPU cores, 1 GPU, and 32GB RAM per job.  The maximum wall time per job is 3 days.&lt;br /&gt;
* medium - Limited to 8 CPU cores, 2 GPUs, and 64GB RAM per job.  The maximum wall time per job is 2 days.&lt;br /&gt;
* high - Limited to 16 CPU cores, 4 GPUs, and 128GB RAM per job.  The maximum wall time per job is 1 day.&lt;br /&gt;
* scavenger - No resource limits per job, only a maximum wall time per job of 3 days.  You are responsible for ensuring your job requests multiple nodes if it requests resources beyond what any one node is capable of.  11% of the total resources available for each trackable resource type in the partition (CPUs/GPUs/RAM) is permitted simultaneously across all of your jobs running with this job QoS, enforced via the corresponding partition QoS (below) for the scavenger partition.  This job QoS is paired one-to-one with the scavenger partition. To use this job QoS, include &amp;lt;code&amp;gt;--partition=scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=scavenger&amp;lt;/code&amp;gt; in your submission arguments.  Do not include any job QoS argument other than &amp;lt;code&amp;gt;--qos=scavenger&amp;lt;/code&amp;gt; (optional) or submission will fail.&lt;br /&gt;
* scavenger-aarch64 - No resource limits per job, only a maximum wall time per job of 3 days.  You are responsible for ensuring your job requests multiple nodes if it requests resources beyond what any one node is capable of.  This job QoS is paired one-to-one with the scavenger-aarch64 partition. To use this job QoS, include &amp;lt;code&amp;gt;--partition=scavenger-aarch64&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--account=scavenger&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;--qos=scavenger-aarch64&amp;lt;/code&amp;gt; in your submission arguments.&lt;br /&gt;
&lt;br /&gt;
You can display these job QoS from the command line using the &amp;lt;code&amp;gt;show_qos&amp;lt;/code&amp;gt; command.  By default, the command will only show job QoS that you can access.  The above five job QoS are the ones that everyone can access.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------ &lt;br /&gt;
             default  3-00:00:00       cpu=4,gres/gpu=1,mem=32G                                          &lt;br /&gt;
                high  1-00:00:00     cpu=16,gres/gpu=4,mem=128G                                          &lt;br /&gt;
              medium  2-00:00:00       cpu=8,gres/gpu=2,mem=64G                                          &lt;br /&gt;
           scavenger  3-00:00:00                                                                         &lt;br /&gt;
   scavenger-aarch64  3-00:00:00                                                                         &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see all job QoS, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_qos --all&amp;lt;/code&amp;gt; command. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU&lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------&lt;br /&gt;
             cml-cpu  7-00:00:00                                        8&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
             default  3-00:00:00       cpu=4,gres/gpu=1,mem=32G&lt;br /&gt;
     gamma-huge-long 10-00:00:00    cpu=32,gres/gpu=16,mem=256G&lt;br /&gt;
                high  1-00:00:00     cpu=16,gres/gpu=4,mem=128G&lt;br /&gt;
             highmem 21-00:00:00                 cpu=128,mem=2T&lt;br /&gt;
           huge-long 10-00:00:00     cpu=32,gres/gpu=8,mem=256G&lt;br /&gt;
         interactive    12:00:00                 cpu=4,mem=128G&lt;br /&gt;
              medium  2-00:00:00       cpu=8,gres/gpu=2,mem=64G&lt;br /&gt;
        oasis-exempt 10-00:00:00                                                      cpu=160,mem=28114M&lt;br /&gt;
           scavenger  3-00:00:00&lt;br /&gt;
   scavenger-aarch64  3-00:00:00&lt;br /&gt;
          vulcan-cpu  2-00:00:00                cpu=1024,mem=4T         4&lt;br /&gt;
      vulcan-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
       vulcan-exempt  7-00:00:00     cpu=32,gres/gpu=8,mem=256G         2&lt;br /&gt;
         vulcan-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
    vulcan-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
       vulcan-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       vulcan-sailon  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                              gres/gpu=48&lt;br /&gt;
    vulcan-scavenger  3-00:00:00     cpu=32,gres/gpu=8,mem=256G&lt;br /&gt;
vulcan-scavenger-mu+  3-00:00:00  cpu=288,gres/gpu=72,mem=1152G&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You are able to submit to any partition that is listed in the &amp;lt;code&amp;gt;show_partitions&amp;lt;/code&amp;gt; command. If you need to use an account other than the default account &amp;lt;tt&amp;gt;nexus&amp;lt;/tt&amp;gt;, you will need to specify it via the &amp;lt;code&amp;gt;--account&amp;lt;/code&amp;gt; submission argument.&lt;br /&gt;
&lt;br /&gt;
=== Partition QoS ===&lt;br /&gt;
Partition QoS are used to limit resources used by all jobs running in a partition, either per user (MaxTRESPU) or per group (GrpTRES).&lt;br /&gt;
&lt;br /&gt;
To view partition QoS, use the &amp;lt;code&amp;gt;show_partition_qos&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500     cpu=11%,gres/gpu=11%,mem=11%                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The scavenger_part partition QoS has relative TRES limits based on the current hardware in a given partition, represented with percentages.  To see the current actual TRES limits of this partition QoS, you can use the &amp;lt;code&amp;gt;-r/--real&amp;lt;/code&amp;gt; argument.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos -r&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500  cpu=888,gres/gpu=140,mem=12574G                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see all partition QoS, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_partition_qos --all&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
                     cbcb         500                                   cpu=1406,mem=50359G&lt;br /&gt;
                cbcb-heng         500                                                      &lt;br /&gt;
         cbcb-interactive         500                                                      &lt;br /&gt;
                    class         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
                     clip         500                                     cpu=726,mem=6939G&lt;br /&gt;
                      cml         500                                   cpu=1226,mem=12116G&lt;br /&gt;
                  cml-cpu         500                                                      &lt;br /&gt;
             cml-director         500                                                      &lt;br /&gt;
              cml-furongh         500                                                      &lt;br /&gt;
            cml-scavenger         500                      gres/gpu=24                     &lt;br /&gt;
               cml-sfeizi         500                                                      &lt;br /&gt;
                cml-wriva         500                                                      &lt;br /&gt;
           cml-wriva-high         500                                                      &lt;br /&gt;
                 csd-h200         500                                                      &lt;br /&gt;
                    gamma         500                                     cpu=906,mem=7675G&lt;br /&gt;
                     mbrc         500                                     cpu=370,mem=3571G&lt;br /&gt;
                      mc2         500                                     cpu=330,mem=3201G&lt;br /&gt;
                    oasis         500                                                      &lt;br /&gt;
                    quics         500                                     cpu=458,mem=4710G&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500     cpu=11%,gres/gpu=11%,mem=11%                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
                   vulcan         500                                   cpu=1402,mem=12936G&lt;br /&gt;
            vulcan-ampere         500                                                      &lt;br /&gt;
               vulcan-cpu         500                                                      &lt;br /&gt;
            vulcan-ramani         500                                                      &lt;br /&gt;
         vulcan-scavenger         500                                                      &lt;br /&gt;
   vulcan-scavenger-multi         500                                                      &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE&#039;&#039;&#039;: These QoS cannot be used directly when submitting jobs. Partition QoS limits apply to all jobs running on a given partition, regardless of what job QoS is used.&lt;br /&gt;
&lt;br /&gt;
For example, in the default non-preemption partition (&amp;lt;tt&amp;gt;tron&amp;lt;/tt&amp;gt;), you are restricted to 32 total CPU cores, 4 total GPUs, and 256GB total RAM at once across all jobs you have running in the partition.&lt;br /&gt;
&lt;br /&gt;
Lab/group-specific partitions may also have their own user limits, and/or may also have group limits on the total number of resources consumed simultaneously by all users that are using their partition, codified by the line in the output above that matches their lab/group name. Note that the values listed above in the two &amp;quot;TRES&amp;quot; columns are not fixed and may fluctuate per-partition as more resources are added to or removed from each partition.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;All partitions also only allow a maximum of 500 submitted (running (R) or pending (PD)) jobs per user in the partition simultaneously.&#039;&#039;&#039; This is to prevent excess pending jobs causing [https://slurm.schedmd.com/sched_config.html#backfill backfill] issues with the SLURM scheduler.&lt;br /&gt;
* If you need to submit more than 500 jobs in batch at once, you can develop and run an &amp;quot;outer submission script&amp;quot; that repeatedly attempts to run an &amp;quot;inner submission script&amp;quot; (your original submission script) to submit jobs in the batch periodically, until all job submissions are successful. The outer submission script should use looping logic to check if you are at the max job limit and should then retry submission after waiting for some time interval.&lt;br /&gt;
: An example outer submission script is as follows. In this example, &amp;lt;code&amp;gt;example_inner.sh&amp;lt;/code&amp;gt; is your inner submission script and is not an [[SLURM/ArrayJobs | array job]], and you want to run 1000 jobs. If your inner submission script is an array job, adjust the number of jobs accordingly. Array jobs must be of size 500 or less.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
numjobs=1000&lt;br /&gt;
i=0&lt;br /&gt;
while [ $i -lt $numjobs ]&lt;br /&gt;
do&lt;br /&gt;
  while [[ &amp;quot;$(sbatch example_inner.sh 2&amp;gt;&amp;amp;1)&amp;quot; =~ &amp;quot;QOSMaxSubmitJobPerUserLimit&amp;quot; ]]&lt;br /&gt;
  do&lt;br /&gt;
    echo &amp;quot;Currently at maximum job submissions allowed by the partition&#039;s QoS.&amp;quot;&lt;br /&gt;
    echo &amp;quot;Waiting for 5 minutes before trying to submit more jobs.&amp;quot;&lt;br /&gt;
    sleep 300&lt;br /&gt;
  done&lt;br /&gt;
  i=$(( $i + 1 ))&lt;br /&gt;
  echo &amp;quot;Submitted job $i of $numjobs&amp;quot;&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is suggested that you run the outer submission script in a [[Tmux]] session to keep the terminal window executing it from being interrupted.&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
All network storage available in Nexus is currently [[NFS]] based, and comes in a few different flavors. Compute nodes also have local scratch storage that can be used.&lt;br /&gt;
&lt;br /&gt;
== Home Directories ==&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
== Scratch Directories ==&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the Nexus compute infrastructure:&lt;br /&gt;
* Network scratch directories&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
Please note that [[ClassAccounts | class accounts]] do not have network scratch directories.&lt;br /&gt;
&lt;br /&gt;
=== Network Scratch Directories ===&lt;br /&gt;
You are allocated 200GB of scratch space via NFS from &amp;lt;code&amp;gt;/fs/nexus-scratch/&amp;lt;USERNAME&amp;gt;&amp;lt;/code&amp;gt; where &amp;lt;USERNAME&amp;gt; is your UMIACS username.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;[[Automounter | automounted]]&#039;&#039;&#039;; you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access it.&lt;br /&gt;
&lt;br /&gt;
You can view your quota usage by running &amp;lt;code&amp;gt;df -h /fs/nexus-scratch/&amp;lt;USERNAME&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 400GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 400GB, you will need faculty approval and/or a [[#Project_Allocations | project allocation]] for this. If you choose to increase your scratch space beyond 400GB, the increased space is also subject to the 270 TB days limit mentioned in the project allocation section before we check back in for renewal. For example, if you request 1.4TB total space, you may have this for 270 days (1TB beyond the 400GB permanent increase). The amount increased beyond 400GB will also count against your faculty member&#039;s 20TB total storage limit mentioned below.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission, data management, and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
=== Local Scratch Directories ===&lt;br /&gt;
Each computational node that you can schedule compute jobs on also has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc. and &#039;&#039;&#039;are not backed up or protected in any way.&#039;&#039;&#039;  These directories are almost always more performant than any other storage available to the job as they are mounted from disks directly attached to the compute node.  However, you must stage your data within the confines of your job and extract the relevant resultant data elsewhere before the end of your job.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our [[MonthlyMaintenanceWindow | monthly maintenance windows]].  Please make sure you secure any resultant data you wish to keep from these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
== Faculty Allocations ==&lt;br /&gt;
Each faculty member can be allocated 1TB of permanent lab space upon request.  We can also support grouping these individual allocations together into larger center, lab, or research group allocations if desired by the faculty.  Please [[HelpDesk | contact staff]] to inquire.&lt;br /&gt;
&lt;br /&gt;
Lab space storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
== Project Allocations ==&lt;br /&gt;
Project allocations are available per user for 270 TB days; you can have a 1TB allocation for up to 270 days, a 3TB allocation for 90 days, etc..&lt;br /&gt;
&lt;br /&gt;
A single faculty member can not have more than 20TB of project allocations across all of their sponsored accounts active simultaneously. Network scratch allocation space increases beyond the 400GB permanent maximum also have the increase count against this limit (i.e., a 1TB network scratch allocation would have 600GB counted towards this limit).&lt;br /&gt;
&lt;br /&gt;
Project storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
The maximum allocation length you can request is 540 days (500GB space) and the maximum storage space you can request is 9TB (30 day length).&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (270 days, 135 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations are available via &amp;lt;code&amp;gt;/fs/nexus-projects/&amp;lt;project name&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;Renewal is not guaranteed to be available due to limits on the amount of total storage.&#039;&#039;&#039;  Near the end of the allocation period, staff will contact you and ask if you are still in need of the storage allocation.  If renewal is available, you can renew for up to another 270 TB days with reapproval from the original faculty approver.&lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then remove the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but the original faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and the faculty approver responding, staff will remove the allocation.&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/nexus-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of Nexus datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=Nexus here].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13273</id>
		<title>Nexus/ClusterOSUpgrade</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus/ClusterOSUpgrade&amp;diff=13273"/>
		<updated>2026-06-01T17:10:26Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Overview==&lt;br /&gt;
UMIACS Technical Staff has begun the process of upgrading the operating system version on all [[Nexus]] cluster nodes from [[RHEL | Red Hat Enterprise Linux (RHEL)]] 8 to 9 as of 9am on 06/01/2026.&lt;br /&gt;
&lt;br /&gt;
RHEL8 is in the Maintenance Support phase of its life cycle and is transitioning to the Extended Life phase in 2029. More information on Red Hat&#039;s lifecycle policy for its operating systems can be found [https://access.redhat.com/support/policy/updates/errata here]. We are staying well ahead of the Extended Life phase date for our cluster nodes by performing these upgrades now.&lt;br /&gt;
&lt;br /&gt;
RHEL9 is still in the Full Support phase of its life cycle and introduces a newer major Linux kernel version and newer [https://www.gnu.org/software/libc glibc] version, improving compatibility with many newer software applications.&lt;br /&gt;
&lt;br /&gt;
==Scheduling==&lt;br /&gt;
&#039;&#039;&#039;Upgrades for all cluster nodes have begun.&#039;&#039;&#039; We expect to be finished with all cluster node upgrades no later than Friday 08/21/2026 at 5pm.&lt;br /&gt;
&lt;br /&gt;
===[[SLURM/JobSubmission | Submission Nodes]]===&lt;br /&gt;
&#039;&#039;&#039;Submission nodes with the number &#039;01&#039; in their hostnames have been upgraded as of 06/01/2026.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Submission nodes with the number &#039;00&#039; in their hostnames will be scheduled for upgrade individually, when all of the compute nodes associated with the same lab/center have been upgraded. Staff will send a notification to individual lab&#039;s/center&#039;s cluster users to schedule the relevant &#039;00&#039; node&#039;s upgrade when applicable. The actual date of each upgrade will be no less than one week after the corresponding notification has been sent.&lt;br /&gt;
&lt;br /&gt;
Data in [[FilesystemDataStorage#UNIX_Filesystem_Storage | UNIX filesystem storage]] spaces on each submission node, i.e., /tmp and /scratch0, will not be preserved during upgrade. If you have any data in any such space on either submission node in a pairing that you want to keep, please ensure you copy it to the other submission node or a [[FilesystemDataStorage#Network-Attached_Filesystem_Storage | network-attached filesystem storage]] space prior to each node&#039;s upgrade date. Data in network-attached filesystem storage spaces, such as /nfshomes or /fs/nexus-scratch, will not be affected.&lt;br /&gt;
&lt;br /&gt;
===Compute Nodes===&lt;br /&gt;
Due to the large number of compute nodes and the desire to not interrupt running jobs, we are not generally able to schedule each specific compute node upgrade on a specific date. If you find that a specific node is unavailable to schedule jobs on, you can run the command &amp;lt;code&amp;gt;sinfo --list-reasons --long&amp;lt;/code&amp;gt; on a submission node and look to see if the node is in the list with the text &amp;quot;RHEL9 upgrade&amp;quot; - if this is present, the upgrade for that node is underway.&lt;br /&gt;
&lt;br /&gt;
We will generally be prioritizing upgrades for nodes based on how available they are across various partitions; nodes that are only available in partitions that contain large numbers of users for a lab/center, e.g., cbcb, clip, cml-dpart, gamma, vulcan-ampere, vulcan-dpart, etc., and corresponding &amp;quot;scavenger&amp;quot; named partitions, will be prioritized over nodes that are only or are also available in faculty-specific / limited-node partitions. All nodes in the tron partition will also generally be prioritized.&lt;br /&gt;
&lt;br /&gt;
If you are a faculty member authoritative for your own partition or a small group&#039;s limited-node partition and have scheduling concerns for the nodes in these partitions, please [[HelpDesk | contact staff]] ASAP to let us know about these concerns and we will make our best effort to accommodate them.&lt;br /&gt;
&lt;br /&gt;
==Interoperability==&lt;br /&gt;
===Software and Modules===&lt;br /&gt;
Please begin transitioning your [[PythonVirtualEnv | virtual environments]], workflows, etc. to work with RHEL9 as soon as possible. You can use the &#039;01&#039; submission node that you have access to for transitioning and light testing - as always, [[Nexus/Submission_Node_Policy | please do not run any computationally intensive processes on this node]]. It is intended to be a host for configuring environments/workflows and submitting jobs only.&lt;br /&gt;
&lt;br /&gt;
The [[Modules | module tree]] for RHEL9 has already been populated with a large number of the same modules that are available in the RHEL8 module tree, although specific modules may have different versions available in the RHEL9 tree as compared to the RHEL8 tree. If you have a dependency on a specific version of a module that is not available in the RHEL9 tree, please [[HelpDesk | contact staff]] and we can get one created.&lt;br /&gt;
* If you want to check to see if a specific version is available now but do not have access to any RHEL9 node yet, the current module tree for RHEL9 is located at /fs/UMos/RedHat-9/x86_64/local/stow/.modulefiles and can be viewed from any UMIACS-supported host.&lt;br /&gt;
&lt;br /&gt;
===SLURM Scheduling===&lt;br /&gt;
If you want or need to schedule a job on only nodes running RHEL8 (or RHEL9, once you have validated whatever is relevant), you can use the submission arguments &amp;lt;code&amp;gt;--prefer=rhel#&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;--constraint=rhel#&amp;lt;/code&amp;gt; in your job arguments to specify this, where # is replaced by the OS version number. The --prefer argument is a soft limitation on which nodes the job can be scheduled on and the --constraint argument is a hard limitation, i.e., if you use the argument &amp;lt;code&amp;gt;--prefer=rhel8&amp;lt;/code&amp;gt; but there are no RHEL8 nodes available at present (with your other submission arguments also satisfied) in the partition you are submitting to, the job will be scheduled on an appropriate RHEL9 node if that would result in an earlier (or instantaneous) start time.&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13272</id>
		<title>MonthlyMaintenanceWindow</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13272"/>
		<updated>2026-05-29T00:16:16Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[HelpDesk | UMIACS staff]] takes a monthly maintenance window to patch and reboot all UMIACS-supported hosts and services.  This provides a way for staff to ensure security updates are installed and applied on the numerous different platforms and appliances that UMIACS runs.&lt;br /&gt;
&lt;br /&gt;
The window for each month is calculated by adding 9 days to [https://en.wikipedia.org/wiki/Patch_Tuesday Microsoft&#039;s Patch Tuesday] to allow for enough time to marshal patches released that month from Microsoft, Red Hat, Apple, and other OS and application vendors and have enough time to get systems prepared to reboot.  This translates to the window being on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month.  The window lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
[[Nexus]] will always have a reservation in place from 4:45pm-8pm on the day of the upcoming window to prevent jobs from being scheduled on compute nodes. The 15-minute addition before the start of the window is to allow jobs to fully end. Any job submitted before the reservation begins that has a time limit that would run into the reservation will be held until at least the end of the reservation - 8pm on the day of the window. This is to prevent issues with jobs failing to end properly causing delays in work we have scheduled during the window.&lt;br /&gt;
&lt;br /&gt;
A list of upcoming maintenance windows is as follows, with the next one in bold. Again, the window is on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month, and lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;June 18th 2026&#039;&#039;&#039;&lt;br /&gt;
* July 23rd 2026&lt;br /&gt;
* August 20th 2026&lt;br /&gt;
* September 17th 2026&lt;br /&gt;
* October 22nd 2026&lt;br /&gt;
* November 19th 2026&lt;br /&gt;
* December 17th 2026&lt;br /&gt;
&lt;br /&gt;
==Archives==&lt;br /&gt;
* January 17th 2013 - BEGIN time of 8pm-12am for this window through February 20th 2020&lt;br /&gt;
* February 21st 2013&lt;br /&gt;
* March 21st 2013&lt;br /&gt;
* April 18th 2013&lt;br /&gt;
* May 23rd 2013&lt;br /&gt;
* June 20th 2013&lt;br /&gt;
* July 18th 2013&lt;br /&gt;
* August 22nd 2013&lt;br /&gt;
* September 19th 2013&lt;br /&gt;
* October 17th 2013&lt;br /&gt;
* December 19th 2013&lt;br /&gt;
* January 23rd 2014&lt;br /&gt;
* February 20th 2014&lt;br /&gt;
* March 20th 2014&lt;br /&gt;
* April 17th 2014&lt;br /&gt;
* May 22nd 2014&lt;br /&gt;
* June 19th 2014&lt;br /&gt;
* July 17th 2014&lt;br /&gt;
* August 21st 2014&lt;br /&gt;
* September 18th 2014&lt;br /&gt;
* October 23rd 2014&lt;br /&gt;
* November 20th 2014&lt;br /&gt;
* December 18th 2014&lt;br /&gt;
* January 22nd 2015&lt;br /&gt;
* February 19th 2015&lt;br /&gt;
* March 19th 2015&lt;br /&gt;
* May 21st 2015&lt;br /&gt;
* June 18th 2015&lt;br /&gt;
* July 23rd 2015&lt;br /&gt;
* August 20th 2015&lt;br /&gt;
* September 17th 2015&lt;br /&gt;
* October 22nd 2015&lt;br /&gt;
* November 19th 2015&lt;br /&gt;
* December 17th 2015&lt;br /&gt;
* January 21st 2016&lt;br /&gt;
* February 18th 2016&lt;br /&gt;
* March 12th 2016 (Adjusted date for AVW power outage)&lt;br /&gt;
* April 21st 2016&lt;br /&gt;
* May 19th 2016&lt;br /&gt;
* June 23rd 2016&lt;br /&gt;
* July 21st 2016&lt;br /&gt;
* August 18th 2016&lt;br /&gt;
* September 22nd 2016&lt;br /&gt;
* October 20th 2016&lt;br /&gt;
* November 17th 2016&lt;br /&gt;
* December 22nd 2016&lt;br /&gt;
* January 19th 2017&lt;br /&gt;
* February 23rd 2017&lt;br /&gt;
* March 23rd 2017&lt;br /&gt;
* April 20th 2017&lt;br /&gt;
* May 18th 2017&lt;br /&gt;
* June 22nd 2017&lt;br /&gt;
* July 20th 2017&lt;br /&gt;
* August 17th 2017&lt;br /&gt;
* September 21st 2017&lt;br /&gt;
* October 19th 2017&lt;br /&gt;
* December 21st 2017&lt;br /&gt;
* January 18th 2018&lt;br /&gt;
* February 22nd 2018&lt;br /&gt;
* March 22nd 2018&lt;br /&gt;
* April 19th 2018&lt;br /&gt;
* May 17th 2018&lt;br /&gt;
* June 21st 2018&lt;br /&gt;
* July 19th 2018&lt;br /&gt;
* August 23rd 2018&lt;br /&gt;
* September 20th 2018&lt;br /&gt;
* October 18th 2018&lt;br /&gt;
* December 20th 2018&lt;br /&gt;
* January 24th 2019&lt;br /&gt;
* February 21st 2019&lt;br /&gt;
* April 18th 2019&lt;br /&gt;
* May 23rd 2019&lt;br /&gt;
* June 20th 2019&lt;br /&gt;
* July 18th 2019&lt;br /&gt;
* August 22nd 2019&lt;br /&gt;
* September 19th 2019&lt;br /&gt;
* October 17th 2019&lt;br /&gt;
* November 21st 2019&lt;br /&gt;
* December 19th 2019&lt;br /&gt;
* January 23rd 2020&lt;br /&gt;
* February 20th 2020&lt;br /&gt;
* April 23rd 2020 - BEGIN time of 5pm-7pm for this window through August 19th 2021&lt;br /&gt;
* June 18th 2020&lt;br /&gt;
* July 23rd 2020&lt;br /&gt;
* August 20th 2020&lt;br /&gt;
* September 17th 2020&lt;br /&gt;
* October 22nd 2020&lt;br /&gt;
* November 19th 2020&lt;br /&gt;
* December 17th 2020&lt;br /&gt;
* January 21st 2021&lt;br /&gt;
* February 18th 2021&lt;br /&gt;
* March 25th 2021 (Adjusted date for extended Spring Break)&lt;br /&gt;
* April 22nd 2021&lt;br /&gt;
* May 20th 2021&lt;br /&gt;
* June 17th 2021&lt;br /&gt;
* July 22nd 2021&lt;br /&gt;
* August 19th 2021&lt;br /&gt;
* September 23rd 2021 - BEGIN time of 5pm-8pm for this window and all others below&lt;br /&gt;
* October 21st 2021&lt;br /&gt;
* November 18th 2021&lt;br /&gt;
* January 20th 2022&lt;br /&gt;
* February 17th 2022&lt;br /&gt;
* March 24th 2022 (Adjusted date for Spring Break)&lt;br /&gt;
* April 21st 2022&lt;br /&gt;
* May 19th 2022&lt;br /&gt;
* June 23rd 2022&lt;br /&gt;
* July 21st 2022&lt;br /&gt;
* August 18th 2022&lt;br /&gt;
* September 22nd 2022&lt;br /&gt;
* October 20th 2022&lt;br /&gt;
* November 17th 2022&lt;br /&gt;
* January 19th 2023&lt;br /&gt;
* February 23rd 2023&lt;br /&gt;
* April 20th 2023&lt;br /&gt;
* May 18th 2023&lt;br /&gt;
* June 22nd 2023&lt;br /&gt;
* July 20th 2023&lt;br /&gt;
* August 17th 2023&lt;br /&gt;
* September 21st 2023&lt;br /&gt;
* October 19th 2023&lt;br /&gt;
* December 20th 2023 (Adjusted date for early Winter Break)&lt;br /&gt;
* January 18th 2024&lt;br /&gt;
* February 22nd 2024&lt;br /&gt;
* March 21st 2024&lt;br /&gt;
* April 18th 2024&lt;br /&gt;
* May 23th 2024&lt;br /&gt;
* June 20th 2024&lt;br /&gt;
* July 18th 2024&lt;br /&gt;
* August 22nd 2024&lt;br /&gt;
* September 19th 2024&lt;br /&gt;
* October 17th 2024&lt;br /&gt;
* November 21st 2024&lt;br /&gt;
* December 19th 2024&lt;br /&gt;
* January 23rd 2025&lt;br /&gt;
* February 20th 2025&lt;br /&gt;
* March 20th 2025&lt;br /&gt;
* April 17th 2025&lt;br /&gt;
* May 22nd 2025&lt;br /&gt;
* June 19th 2025&lt;br /&gt;
* July 17th 2025&lt;br /&gt;
* August 21st 2025&lt;br /&gt;
* September 18th 2025&lt;br /&gt;
* October 23rd 2025&lt;br /&gt;
* November 20th 2025&lt;br /&gt;
* December 18th 2025&lt;br /&gt;
* January 22nd 2026&lt;br /&gt;
* February 19th 2026&lt;br /&gt;
* March 19th 2026&lt;br /&gt;
* April 23rd 2026&lt;br /&gt;
* May 28th 2026 (Adjusted date for CIO-imposed network change freeze)&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus&amp;diff=13271</id>
		<title>Nexus</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=Nexus&amp;diff=13271"/>
		<updated>2026-05-19T15:28:45Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: /* Partition QoS */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Note|UMIACS Technical Staff will begin the process of upgrading the operating system version on all Nexus cluster nodes in Summer 2026. Please see [[Nexus/ClusterOSUpgrade]] for more information.}}&lt;br /&gt;
&lt;br /&gt;
The Nexus is the combined scheduler of resources in UMIACS.  The resource manager for Nexus is [[SLURM]].  Resources are arranged into partitions where users are able to schedule computational jobs.  Users are arranged into a number of SLURM accounts based on faculty, lab, or center investments.&lt;br /&gt;
&lt;br /&gt;
= Getting Started =&lt;br /&gt;
All accounts in UMIACS are sponsored.  If you don&#039;t already have a UMIACS account, please see [[Accounts]] for information on getting one.  You need a full UMIACS account - not a [[Accounts/Collaborator | collaborator account]] - in order to access Nexus.&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
Your access to submission nodes (alternatively called login nodes) for Nexus computational resources is determined by your account sponsor&#039;s department, center, or lab affiliation.  You can log into the [https://intranet.umiacs.umd.edu/directory/cr/ UMIACS Directory CR application] and select the Computational Resource (CR) in the list that has the prefix &amp;lt;code&amp;gt;nexus&amp;lt;/code&amp;gt;.  The Hosts section lists your available submission nodes - generally a pair of nodes with hostnames of the format &amp;lt;tt&amp;gt;nexus&amp;lt;department, lab, or center abbreviation&amp;gt;[00,01]&amp;lt;/tt&amp;gt;, e.g., &amp;lt;tt&amp;gt;nexusgroup00&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;nexusgroup01&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Once you have identified your submission nodes, you can [[SSH]] into them [https://itsupport.umd.edu/itsupport?id=kb_article_view&amp;amp;sysparm_article=KB0016076 after connecting to UMD&#039;s GlobalProtect VPN].  From there, you are able to submit to the cluster via our [[SLURM]] workload manager.  You need to make sure that your submitted jobs have the correct account, partition, and qos.&lt;br /&gt;
&lt;br /&gt;
Please read our [[Nexus/Submission_Node_Policy|Submission Node Policy]] for guidance on appropriate usage of a submission node. If a submission node becomes unresponsive due to disregarding this policy, &amp;lt;b&amp;gt;we may kill user processes on these nodes to resolve the issue&amp;lt;/b&amp;gt;. We reserve the right to take action on users who repeatedly cause issues on submission nodes.&lt;br /&gt;
&lt;br /&gt;
== Jobs ==&lt;br /&gt;
[[SLURM]] jobs are [[SLURM/JobSubmission | submitted]] by either &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;sbatch&amp;lt;/code&amp;gt; depending if you are doing an interactive job or batch job, respectively.  You need to provide the where/how/who to run the job and specify the resources you need to run with.&lt;br /&gt;
&lt;br /&gt;
For the who/where/how, you may be required to specify &amp;lt;code&amp;gt;--account&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--partition&amp;lt;/code&amp;gt;, and/or &amp;lt;code&amp;gt;--qos&amp;lt;/code&amp;gt; (respectively) to be able to adequately submit jobs to the Nexus.&lt;br /&gt;
&lt;br /&gt;
For resources, you may need to specify &amp;lt;code&amp;gt;--time&amp;lt;/code&amp;gt; for time, &amp;lt;code&amp;gt;--cpus-per-task&amp;lt;/code&amp;gt; for CPUs, &amp;lt;code&amp;gt;--mem&amp;lt;/code&amp;gt; for RAM, and &amp;lt;code&amp;gt;--gres=gpu&amp;lt;/code&amp;gt; for GPUs in your submission arguments to meet your requirements.  There are defaults for all four; if you don&#039;t specify something, you will get the default value for that resource, which is minimal (e.g., by default, NO GPUs are included if you do not specify &amp;lt;code&amp;gt;--gres=gpu&amp;lt;/code&amp;gt;).  For more information about submission flags for GPU resources, see [[SLURM/JobSubmission#Requesting_GPUs | here]].  You may also use &amp;lt;code&amp;gt;--ntasks&amp;lt;/code&amp;gt; to specify the number of parallel processes to run, with each task having its own set of the resources specified above. You can run &amp;lt;code&amp;gt;man srun&amp;lt;/code&amp;gt; on your submission node for a complete list of available submission arguments.&lt;br /&gt;
&lt;br /&gt;
For a list of available GPU types on Nexus and their specs, please see [[Nexus/GPUs]].&lt;br /&gt;
&lt;br /&gt;
For details on how the network for Nexus is architected, please see [[Nexus/Network]]. This can be important if you wish to optimize performance of your jobs.&lt;br /&gt;
&lt;br /&gt;
=== Interactive ===&lt;br /&gt;
Once logged into a submission node, you can run simple interactive jobs.  If your session is interrupted from the submission node, the job will be killed.  As such, we encourage use of a terminal multiplexer such as [[Tmux]].&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ srun --pty --cpus-per-task=4 --mem=2gb --gres=gpu:1 bash&lt;br /&gt;
srun: Job account was unset; set to user default of &#039;nexus&#039;&lt;br /&gt;
srun: Job partition was unset; set to cluster default of &#039;tron&#039;&lt;br /&gt;
srun: Job QoS was unset; set to association default of &#039;default&#039;&lt;br /&gt;
srun: Job time limit was unset; set to partition default of 60 minutes&lt;br /&gt;
srun: job 1 queued and waiting for resources&lt;br /&gt;
srun: job 1 has been allocated resources&lt;br /&gt;
$ hostname&lt;br /&gt;
tron62.umiacs.umd.edu&lt;br /&gt;
$ nvidia-smi -L&lt;br /&gt;
GPU 0: NVIDIA GeForce RTX 2080 Ti (UUID: GPU-daad6a04-a2ce-1183-ce53-b267048f750a)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Batch ===&lt;br /&gt;
Batch jobs are scheduled with a script file with an optional ability to embed job scheduling parameters via variables that are defined by &amp;lt;code&amp;gt;#SBATCH&amp;lt;/code&amp;gt; lines at the top of the file.  You can find some examples in our [[SLURM/JobSubmission]] documentation.&lt;br /&gt;
&lt;br /&gt;
= Partitions = &lt;br /&gt;
The SLURM resource manager uses partitions to act as job queues which can restrict size, time and user limits. The Nexus has a number of different partitions of resources. Different Centers, Labs, and Faculty are able to invest in computational resources that are restricted to approved users through these partitions.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by all non-[[ClassAccounts |class account]] users:&#039;&#039;&#039;&lt;br /&gt;
* [[Nexus/Tron]] - Pool of resources available to all non-class accounts sponsored by either UMIACS or CSD faculty.&lt;br /&gt;
* Scavenger - [https://slurm.schedmd.com/preempt.html Preemption] partition that contains [https://en.wikipedia.org/wiki/X86-64 x86_64] architecture nodes from multiple other partitions. More resources are available to schedule simultaneously than in other partitions, however jobs are subject to preemption rules. You are responsible for ensuring your jobs handle this preemption correctly. The SLURM scheduler will simply restart a preempted job with the same submission arguments when it is available to run again. For an overview of things you can check within scripts to determine if your job was preempted/resumed, see [[SLURM/Preemption]].&lt;br /&gt;
* Scavenger (aarch64) - Preemption partition identical in design to &amp;lt;tt&amp;gt;scavenger&amp;lt;/tt&amp;gt;, but only contains [https://en.wikipedia.org/wiki/AArch64 aarch64] architecture nodes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by [[ClassAccounts]]:&#039;&#039;&#039;&lt;br /&gt;
* [[ClassAccounts#Cluster_Usage | Class]] - Pool of resources available to class accounts sponsored by either UMIACS or CSD faculty.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Partitions usable by specific lab/center users:&#039;&#039;&#039;&lt;br /&gt;
* [[Nexus/CBCB]] - CBCB lab pool available for CBCB lab members.&lt;br /&gt;
* [[Nexus/CLIP]] - CLIP lab pool available for CLIP lab members.&lt;br /&gt;
* [[Nexus/CML]] - CML lab pool available for CML lab members.&lt;br /&gt;
* [[Nexus/GAMMA]] - GAMMA lab pool available for GAMMA lab members.&lt;br /&gt;
* [[Nexus/MBRC]] - MBRC lab pool available for MBRC lab members.&lt;br /&gt;
* [[Nexus/MC2]] - MC2 lab pool available for MC2 lab members.&lt;br /&gt;
* [[Nexus/QuICS]] - QuICS lab pool available for QuICS lab members.&lt;br /&gt;
* [[Nexus/Vulcan]] - Vulcan lab pool available for Vulcan lab members.&lt;br /&gt;
&lt;br /&gt;
You can view the partitions that you have access to by using the &amp;lt;code&amp;gt;show_partitions&amp;lt;/code&amp;gt; command. By default, the command will show only the partitions that are available to you.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partitions&lt;br /&gt;
                    Name           AllowAccounts                       AllowQos    MaxNodes                        Nodes&lt;br /&gt;
------------------------ ----------------------- ------------------------------ ----------- ----------------------------               &lt;br /&gt;
               scavenger               scavenger                      scavenger   UNLIMITED                brigid[16-19]                                                                                                             &lt;br /&gt;
                                                                                                             cbcb[00-29]                                                                                                             &lt;br /&gt;
                                                                                                             clip[00-13]                                                                                               &lt;br /&gt;
                                                                                               cml[00,02-13,15-28,30-33]                                                                                                     &lt;br /&gt;
                                                                                                     cmlcpu[00-04,06-07]                                                                                                         &lt;br /&gt;
                                                                                                         gammagpu[00-21]                                                                                               &lt;br /&gt;
                                                                                               legacy[00-11,13-28,30-36]                                                                                                        &lt;br /&gt;
                                                                                                        legacygpu[00-07]                                                                                                                 &lt;br /&gt;
                                                                                                                 quics00                                                                                                       &lt;br /&gt;
                                                                                                       tron[00-44,46-69]                                                                                                           &lt;br /&gt;
                                                                                                           vulcan[00-45]&lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
       scavenger-aarch64               scavenger              scavenger-aarch64   UNLIMITED                 oasis[00-39]&lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------                    &lt;br /&gt;
                    tron                   nexus                        default   UNLIMITED            tron[00-44,46-69]                                                                           &lt;br /&gt;
                                                                           high                                                                                                                  &lt;br /&gt;
                                                                         medium                                         &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see information for all of the partitions, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_partitions --all&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partitions --all&lt;br /&gt;
                    Name           AllowAccounts                       AllowQos    MaxNodes                        Nodes&lt;br /&gt;
------------------------ ----------------------- ------------------------------ ----------- ----------------------------                    &lt;br /&gt;
                    cbcb                    cbcb                        default   UNLIMITED            cbcb[00-20,22-29]                                                                         &lt;br /&gt;
                                                                         medium                legacy[00-11,13-28,30-36]                                                                           &lt;br /&gt;
                                                                           high                                                                                                               &lt;br /&gt;
                                                                      huge-long                                                                                                                 &lt;br /&gt;
                                                                        highmem                                         &lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------&lt;br /&gt;
               cbcb-heng               cbcb-heng                        default   UNLIMITED                  cbcb[26-29]                                                                         &lt;br /&gt;
                                                                         medium                                                                                                                     &lt;br /&gt;
                                                                           high                                                                                                               &lt;br /&gt;
                                                                      huge-long                                                                                                                 &lt;br /&gt;
                                                                        highmem                                         &lt;br /&gt;
------------------------------------------------------------------------------------------------------------------------        &lt;br /&gt;
        cbcb-interactive                    cbcb                    interactive   UNLIMITED                       cbcb21&lt;br /&gt;
...&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Quality of Service (QoS) =&lt;br /&gt;
SLURM uses Quality of Service (QoS) both to provide limits on job sizes (termed by us as &amp;quot;job QoS&amp;quot;) as well as to limit resources used by all jobs running in a partition, either per user or per group (termed by us as &amp;quot;partition QoS&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
=== Job QoS ===&lt;br /&gt;
Job QoS are used to provide limits on the size of job that you can run. You should try to allocate only the resources your job actually needs, as resources that each of your jobs schedules are counted against your [[SLURM/Priority#Fair-share | fair-share priority]] in the future.&lt;br /&gt;
* default - Default job QoS. Limited to 4 CPU cores, 1 GPU, and 32GB RAM per job.  The maximum wall time per job is 3 days.&lt;br /&gt;
* medium - Limited to 8 CPU cores, 2 GPUs, and 64GB RAM per job.  The maximum wall time per job is 2 days.&lt;br /&gt;
* high - Limited to 16 CPU cores, 4 GPUs, and 128GB RAM per job.  The maximum wall time per job is 1 day.&lt;br /&gt;
* scavenger - No resource limits per job, only a maximum wall time per job of 3 days.  You are responsible for ensuring your job requests multiple nodes if it requests resources beyond what any one node is capable of.  11% of the total resources available for each trackable resource type in the partition (CPUs/GPUs/RAM) is permitted simultaneously across all of your jobs running with this job QoS, enforced via the corresponding partition QoS (below) for the scavenger partition.  This job QoS is paired one-to-one with the scavenger partition. To use this job QoS, include &amp;lt;code&amp;gt;--partition=scavenger&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--account=scavenger&amp;lt;/code&amp;gt; in your submission arguments.  Do not include any job QoS argument other than &amp;lt;code&amp;gt;--qos=scavenger&amp;lt;/code&amp;gt; (optional) or submission will fail.&lt;br /&gt;
* scavenger-aarch64 - No resource limits per job, only a maximum wall time per job of 3 days.  You are responsible for ensuring your job requests multiple nodes if it requests resources beyond what any one node is capable of.  This job QoS is paired one-to-one with the scavenger-aarch64 partition. To use this job QoS, include &amp;lt;code&amp;gt;--partition=scavenger-aarch64&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;--account=scavenger&amp;lt;/code&amp;gt;, and &amp;lt;code&amp;gt;--qos=scavenger-aarch64&amp;lt;/code&amp;gt; in your submission arguments.&lt;br /&gt;
&lt;br /&gt;
You can display these job QoS from the command line using the &amp;lt;code&amp;gt;show_qos&amp;lt;/code&amp;gt; command.  By default, the command will only show job QoS that you can access.  The above five job QoS are the ones that everyone can access.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU &lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------ &lt;br /&gt;
             default  3-00:00:00       cpu=4,gres/gpu=1,mem=32G                                          &lt;br /&gt;
                high  1-00:00:00     cpu=16,gres/gpu=4,mem=128G                                          &lt;br /&gt;
              medium  2-00:00:00       cpu=8,gres/gpu=2,mem=64G                                          &lt;br /&gt;
           scavenger  3-00:00:00                                                                         &lt;br /&gt;
   scavenger-aarch64  3-00:00:00                                                                         &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see all job QoS, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_qos --all&amp;lt;/code&amp;gt; command. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_qos --all&lt;br /&gt;
                Name     MaxWall                        MaxTRES MaxJobsPU                      MaxTRESPU&lt;br /&gt;
-------------------- ----------- ------------------------------ --------- ------------------------------&lt;br /&gt;
             cml-cpu  7-00:00:00                                        8&lt;br /&gt;
         cml-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
            cml-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
       cml-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
          cml-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       cml-scavenger  3-00:00:00                                                             gres/gpu=24&lt;br /&gt;
       cml-very_high  1-12:00:00     cpu=32,gres/gpu=8,mem=256G         8                    gres/gpu=12&lt;br /&gt;
             default  3-00:00:00       cpu=4,gres/gpu=1,mem=32G&lt;br /&gt;
     gamma-huge-long 10-00:00:00    cpu=32,gres/gpu=16,mem=256G&lt;br /&gt;
                high  1-00:00:00     cpu=16,gres/gpu=4,mem=128G&lt;br /&gt;
             highmem 21-00:00:00                 cpu=128,mem=2T&lt;br /&gt;
           huge-long 10-00:00:00     cpu=32,gres/gpu=8,mem=256G&lt;br /&gt;
         interactive    12:00:00                 cpu=4,mem=128G&lt;br /&gt;
              medium  2-00:00:00       cpu=8,gres/gpu=2,mem=64G&lt;br /&gt;
        oasis-exempt 10-00:00:00                                                      cpu=160,mem=28114M&lt;br /&gt;
           scavenger  3-00:00:00&lt;br /&gt;
   scavenger-aarch64  3-00:00:00&lt;br /&gt;
          vulcan-cpu  2-00:00:00                cpu=1024,mem=4T         4&lt;br /&gt;
      vulcan-default  7-00:00:00       cpu=4,gres/gpu=1,mem=32G         2&lt;br /&gt;
       vulcan-exempt  7-00:00:00     cpu=32,gres/gpu=8,mem=256G         2&lt;br /&gt;
         vulcan-high  1-12:00:00     cpu=16,gres/gpu=4,mem=128G         2&lt;br /&gt;
    vulcan-high_long 14-00:00:00              cpu=32,gres/gpu=8         8                     gres/gpu=8&lt;br /&gt;
       vulcan-medium  3-00:00:00       cpu=8,gres/gpu=2,mem=64G         2&lt;br /&gt;
       vulcan-sailon  3-00:00:00     cpu=32,gres/gpu=8,mem=256G                              gres/gpu=48&lt;br /&gt;
    vulcan-scavenger  3-00:00:00     cpu=32,gres/gpu=8,mem=256G&lt;br /&gt;
vulcan-scavenger-mu+  3-00:00:00  cpu=288,gres/gpu=72,mem=1152G&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You are able to submit to any partition that is listed in the &amp;lt;code&amp;gt;show_partitions&amp;lt;/code&amp;gt; command. If you need to use an account other than the default account &amp;lt;tt&amp;gt;nexus&amp;lt;/tt&amp;gt;, you will need to specify it via the &amp;lt;code&amp;gt;--account&amp;lt;/code&amp;gt; submission argument.&lt;br /&gt;
&lt;br /&gt;
=== Partition QoS ===&lt;br /&gt;
Partition QoS are used to limit resources used by all jobs running in a partition, either per user (MaxTRESPU) or per group (GrpTRES).&lt;br /&gt;
&lt;br /&gt;
To view partition QoS, use the &amp;lt;code&amp;gt;show_partition_qos&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500     cpu=11%,gres/gpu=11%,mem=11%                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The scavenger_part partition QoS has relative TRES limits based on the current hardware in a given partition, represented with percentages.  To see the current actual TRES limits of this partition QoS, you can use the &amp;lt;code&amp;gt;-r/--real&amp;lt;/code&amp;gt; argument.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos -r&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500  cpu=888,gres/gpu=140,mem=12574G                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to see all partition QoS, including those that you do not have access to, you can use the &amp;lt;code&amp;gt;show_partition_qos --all&amp;lt;/code&amp;gt; command.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ show_partition_qos --all&lt;br /&gt;
                     Name MaxSubmitPU                        MaxTRESPU              GrpTRES&lt;br /&gt;
------------------------- ----------- -------------------------------- --------------------&lt;br /&gt;
                     cbcb         500                                   cpu=1406,mem=50359G&lt;br /&gt;
                cbcb-heng         500                                                      &lt;br /&gt;
         cbcb-interactive         500                                                      &lt;br /&gt;
                    class         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
                     clip         500                                     cpu=726,mem=6939G&lt;br /&gt;
                      cml         500                                   cpu=1226,mem=12116G&lt;br /&gt;
                  cml-cpu         500                                                      &lt;br /&gt;
             cml-director         500                                                      &lt;br /&gt;
              cml-furongh         500                                                      &lt;br /&gt;
            cml-scavenger         500                      gres/gpu=24                     &lt;br /&gt;
               cml-sfeizi         500                                                      &lt;br /&gt;
                cml-wriva         500                                                      &lt;br /&gt;
           cml-wriva-high         500                                                      &lt;br /&gt;
                 csd-h200         500                                                      &lt;br /&gt;
                    gamma         500                                     cpu=906,mem=7675G&lt;br /&gt;
                     mbrc         500                                     cpu=370,mem=3571G&lt;br /&gt;
                      mc2         500                                     cpu=330,mem=3201G&lt;br /&gt;
                    oasis         500                                                      &lt;br /&gt;
                    quics         500                                     cpu=458,mem=4710G&lt;br /&gt;
   scavenger-aarch64_part         500                                                      &lt;br /&gt;
           scavenger_part         500     cpu=11%,gres/gpu=11%,mem=11%                     &lt;br /&gt;
                     tron         500    cpu=32,gres/gpu=4,mem=262144M                     &lt;br /&gt;
                   vulcan         500                                   cpu=1402,mem=12936G&lt;br /&gt;
            vulcan-ampere         500                                                      &lt;br /&gt;
               vulcan-cpu         500                                                      &lt;br /&gt;
            vulcan-ramani         500                                                      &lt;br /&gt;
         vulcan-scavenger         500                                                      &lt;br /&gt;
   vulcan-scavenger-multi         500                                                      &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE&#039;&#039;&#039;: These QoS cannot be used directly when submitting jobs. Partition QoS limits apply to all jobs running on a given partition, regardless of what job QoS is used.&lt;br /&gt;
&lt;br /&gt;
For example, in the default non-preemption partition (&amp;lt;tt&amp;gt;tron&amp;lt;/tt&amp;gt;), you are restricted to 32 total CPU cores, 4 total GPUs, and 256GB total RAM at once across all jobs you have running in the partition.&lt;br /&gt;
&lt;br /&gt;
Lab/group-specific partitions may also have their own user limits, and/or may also have group limits on the total number of resources consumed simultaneously by all users that are using their partition, codified by the line in the output above that matches their lab/group name. Note that the values listed above in the two &amp;quot;TRES&amp;quot; columns are not fixed and may fluctuate per-partition as more resources are added to or removed from each partition.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;All partitions also only allow a maximum of 500 submitted (running (R) or pending (PD)) jobs per user in the partition simultaneously.&#039;&#039;&#039; This is to prevent excess pending jobs causing [https://slurm.schedmd.com/sched_config.html#backfill backfill] issues with the SLURM scheduler.&lt;br /&gt;
* If you need to submit more than 500 jobs in batch at once, you can develop and run an &amp;quot;outer submission script&amp;quot; that repeatedly attempts to run an &amp;quot;inner submission script&amp;quot; (your original submission script) to submit jobs in the batch periodically, until all job submissions are successful. The outer submission script should use looping logic to check if you are at the max job limit and should then retry submission after waiting for some time interval.&lt;br /&gt;
: An example outer submission script is as follows. In this example, &amp;lt;code&amp;gt;example_inner.sh&amp;lt;/code&amp;gt; is your inner submission script and is not an [[SLURM/ArrayJobs | array job]], and you want to run 1000 jobs. If your inner submission script is an array job, adjust the number of jobs accordingly. Array jobs must be of size 500 or less.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/bash&lt;br /&gt;
numjobs=1000&lt;br /&gt;
i=0&lt;br /&gt;
while [ $i -lt $numjobs ]&lt;br /&gt;
do&lt;br /&gt;
  while [[ &amp;quot;$(sbatch example_inner.sh 2&amp;gt;&amp;amp;1)&amp;quot; =~ &amp;quot;QOSMaxSubmitJobPerUserLimit&amp;quot; ]]&lt;br /&gt;
  do&lt;br /&gt;
    echo &amp;quot;Currently at maximum job submissions allowed by the partition&#039;s QoS.&amp;quot;&lt;br /&gt;
    echo &amp;quot;Waiting for 5 minutes before trying to submit more jobs.&amp;quot;&lt;br /&gt;
    sleep 300&lt;br /&gt;
  done&lt;br /&gt;
  i=$(( $i + 1 ))&lt;br /&gt;
  echo &amp;quot;Submitted job $i of $numjobs&amp;quot;&lt;br /&gt;
done&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is suggested that you run the outer submission script in a [[Tmux]] session to keep the terminal window executing it from being interrupted.&lt;br /&gt;
&lt;br /&gt;
= Storage =&lt;br /&gt;
All network storage available in Nexus is currently [[NFS]] based, and comes in a few different flavors. Compute nodes also have local scratch storage that can be used.&lt;br /&gt;
&lt;br /&gt;
== Home Directories ==&lt;br /&gt;
{{Nfshomes}}&lt;br /&gt;
&lt;br /&gt;
== Scratch Directories ==&lt;br /&gt;
Scratch data has no data protection including no snapshots and the data is not backed up. There are two types of scratch directories in the Nexus compute infrastructure:&lt;br /&gt;
* Network scratch directories&lt;br /&gt;
* Local scratch directories&lt;br /&gt;
&lt;br /&gt;
Please note that [[ClassAccounts | class accounts]] do not have network scratch directories.&lt;br /&gt;
&lt;br /&gt;
=== Network Scratch Directories ===&lt;br /&gt;
You are allocated 200GB of scratch space via NFS from &amp;lt;code&amp;gt;/fs/nexus-scratch/&amp;lt;USERNAME&amp;gt;&amp;lt;/code&amp;gt; where &amp;lt;USERNAME&amp;gt; is your UMIACS username.  &#039;&#039;&#039;It is not backed up or protected in any way.&#039;&#039;&#039;  This directory is &#039;&#039;&#039;[[Automounter | automounted]]&#039;&#039;&#039;; you will need to &amp;lt;code&amp;gt;cd&amp;lt;/code&amp;gt; into the directory or request/specify a fully qualified file path to access it.&lt;br /&gt;
&lt;br /&gt;
You can view your quota usage by running &amp;lt;code&amp;gt;df -h /fs/nexus-scratch/&amp;lt;USERNAME&amp;gt;&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
You may request a permanent increase of up to 400GB total space without any faculty approval by [[HelpDesk | contacting staff]].  If you need space beyond 400GB, you will need faculty approval and/or a [[#Project_Allocations | project allocation]] for this. If you choose to increase your scratch space beyond 400GB, the increased space is also subject to the 270 TB days limit mentioned in the project allocation section before we check back in for renewal. For example, if you request 1.4TB total space, you may have this for 270 days (1TB beyond the 400GB permanent increase). The amount increased beyond 400GB will also count against your faculty member&#039;s 20TB total storage limit mentioned below.&lt;br /&gt;
&lt;br /&gt;
This file system is available on all submission, data management, and computational nodes within the cluster.&lt;br /&gt;
&lt;br /&gt;
=== Local Scratch Directories ===&lt;br /&gt;
Each computational node that you can schedule compute jobs on also has one or more local scratch directories.  These are always named &amp;lt;code&amp;gt;/scratch0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;/scratch1&amp;lt;/code&amp;gt;, etc. and &#039;&#039;&#039;are not backed up or protected in any way.&#039;&#039;&#039;  These directories are almost always more performant than any other storage available to the job as they are mounted from disks directly attached to the compute node.  However, you must stage your data within the confines of your job and extract the relevant resultant data elsewhere before the end of your job.&lt;br /&gt;
&lt;br /&gt;
These local scratch directories have a tmpwatch job which will &#039;&#039;&#039;delete unaccessed data after 90 days&#039;&#039;&#039;, scheduled via maintenance jobs to run once a month during our [[MonthlyMaintenanceWindow | monthly maintenance windows]].  Please make sure you secure any resultant data you wish to keep from these directories at the end of your job.&lt;br /&gt;
&lt;br /&gt;
== Faculty Allocations ==&lt;br /&gt;
Each faculty member can be allocated 1TB of permanent lab space upon request.  We can also support grouping these individual allocations together into larger center, lab, or research group allocations if desired by the faculty.  Please [[HelpDesk | contact staff]] to inquire.&lt;br /&gt;
&lt;br /&gt;
Lab space storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
== Project Allocations ==&lt;br /&gt;
Project allocations are available per user for 270 TB days; you can have a 1TB allocation for up to 270 days, a 3TB allocation for 90 days, etc..&lt;br /&gt;
&lt;br /&gt;
A single faculty member can not have more than 20TB of project allocations across all of their sponsored accounts active simultaneously. Network scratch allocation space increases beyond the 400GB permanent maximum also have the increase count against this limit (i.e., a 1TB network scratch allocation would have 600GB counted towards this limit).&lt;br /&gt;
&lt;br /&gt;
Project storage is fully protected.  It has [[Snapshots | snapshots]] enabled and is [[NightlyBackups | backed up nightly]].&lt;br /&gt;
&lt;br /&gt;
The maximum allocation length you can request is 540 days (500GB space) and the maximum storage space you can request is 9TB (30 day length).&lt;br /&gt;
&lt;br /&gt;
To request an allocation, please [[HelpDesk | contact staff]] with the faculty member(s) that the project is under involved in the conversation.  Please include the following details:&lt;br /&gt;
* Project Name (short)&lt;br /&gt;
* Description&lt;br /&gt;
* Size (1TB, 2TB, etc.)&lt;br /&gt;
* Length in days (270 days, 135 days, etc.)&lt;br /&gt;
* Other user(s) that need to access the allocation, if any&lt;br /&gt;
&lt;br /&gt;
These allocations are available via &amp;lt;code&amp;gt;/fs/nexus-projects/&amp;lt;project name&amp;gt;&amp;lt;/code&amp;gt;.  &#039;&#039;&#039;Renewal is not guaranteed to be available due to limits on the amount of total storage.&#039;&#039;&#039;  Near the end of the allocation period, staff will contact you and ask if you are still in need of the storage allocation.  If renewal is available, you can renew for up to another 270 TB days with reapproval from the original faculty approver.&lt;br /&gt;
* If you are no longer in need of the storage allocation, you will need to relocate all desired data within two weeks of the end of the allocation period.  Staff will then remove the allocation.&lt;br /&gt;
* If you do not respond to staff&#039;s request by the end of the allocation period, staff will make the allocation temporarily inaccessible.&lt;br /&gt;
** If you do respond asking for renewal but the original faculty approver does not respond within two weeks of the end of the allocation period, staff will also make the allocation temporarily inaccessible.&lt;br /&gt;
** If one month from the end of the allocation period is reached without both you and the faculty approver responding, staff will remove the allocation.&lt;br /&gt;
&lt;br /&gt;
== Datasets ==&lt;br /&gt;
We have read-only dataset storage available at &amp;lt;code&amp;gt;/fs/nexus-datasets&amp;lt;/code&amp;gt;.  If there are datasets that you would like to see curated and made available, please see [[Datasets | this page]].&lt;br /&gt;
&lt;br /&gt;
The list of Nexus datasets we currently host can be viewed [https://info.umiacs.umd.edu/datasets/list/?q=Nexus here].&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13270</id>
		<title>MonthlyMaintenanceWindow</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=MonthlyMaintenanceWindow&amp;diff=13270"/>
		<updated>2026-05-18T14:34:22Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[HelpDesk | UMIACS staff]] takes a monthly maintenance window to patch and reboot all UMIACS-supported hosts and services.  This provides a way for staff to ensure security updates are installed and applied on the numerous different platforms and appliances that UMIACS runs.&lt;br /&gt;
&lt;br /&gt;
The window for each month is calculated by adding 9 days to [https://en.wikipedia.org/wiki/Patch_Tuesday Microsoft&#039;s Patch Tuesday] to allow for enough time to marshal patches released that month from Microsoft, Red Hat, Apple, and other OS and application vendors and have enough time to get systems prepared to reboot.  This translates to the window being on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month.  The window lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
[[Nexus]] will always have a reservation in place from 4:45pm-8pm on the day of the upcoming window to prevent jobs from being scheduled on compute nodes. The 15-minute addition before the start of the window is to allow jobs to fully end. Any job submitted before the reservation begins that has a time limit that would run into the reservation will be held until at least the end of the reservation - 8pm on the day of the window. This is to prevent issues with jobs failing to end properly causing delays in work we have scheduled during the window.&lt;br /&gt;
&lt;br /&gt;
A list of upcoming maintenance windows is as follows, with the next one in bold. Again, the window is on the &#039;&#039;&#039;Thursday that occurs between the 17th and the 23rd (inclusive)&#039;&#039;&#039; of each month, and lasts from &#039;&#039;&#039;5pm-8pm&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;May 28th 2026&#039;&#039;&#039; (Adjusted date for CIO-imposed network change freeze)&lt;br /&gt;
* June 18th 2026&lt;br /&gt;
* July 23rd 2026&lt;br /&gt;
* August 20th 2026&lt;br /&gt;
* September 17th 2026&lt;br /&gt;
* October 22nd 2026&lt;br /&gt;
* November 19th 2026&lt;br /&gt;
* December 17th 2026&lt;br /&gt;
&lt;br /&gt;
==Archives==&lt;br /&gt;
* January 17th 2013 - BEGIN time of 8pm-12am for this window through February 20th 2020&lt;br /&gt;
* February 21st 2013&lt;br /&gt;
* March 21st 2013&lt;br /&gt;
* April 18th 2013&lt;br /&gt;
* May 23rd 2013&lt;br /&gt;
* June 20th 2013&lt;br /&gt;
* July 18th 2013&lt;br /&gt;
* August 22nd 2013&lt;br /&gt;
* September 19th 2013&lt;br /&gt;
* October 17th 2013&lt;br /&gt;
* December 19th 2013&lt;br /&gt;
* January 23rd 2014&lt;br /&gt;
* February 20th 2014&lt;br /&gt;
* March 20th 2014&lt;br /&gt;
* April 17th 2014&lt;br /&gt;
* May 22nd 2014&lt;br /&gt;
* June 19th 2014&lt;br /&gt;
* July 17th 2014&lt;br /&gt;
* August 21st 2014&lt;br /&gt;
* September 18th 2014&lt;br /&gt;
* October 23rd 2014&lt;br /&gt;
* November 20th 2014&lt;br /&gt;
* December 18th 2014&lt;br /&gt;
* January 22nd 2015&lt;br /&gt;
* February 19th 2015&lt;br /&gt;
* March 19th 2015&lt;br /&gt;
* May 21st 2015&lt;br /&gt;
* June 18th 2015&lt;br /&gt;
* July 23rd 2015&lt;br /&gt;
* August 20th 2015&lt;br /&gt;
* September 17th 2015&lt;br /&gt;
* October 22nd 2015&lt;br /&gt;
* November 19th 2015&lt;br /&gt;
* December 17th 2015&lt;br /&gt;
* January 21st 2016&lt;br /&gt;
* February 18th 2016&lt;br /&gt;
* March 12th 2016 (Adjusted date for AVW power outage)&lt;br /&gt;
* April 21st 2016&lt;br /&gt;
* May 19th 2016&lt;br /&gt;
* June 23rd 2016&lt;br /&gt;
* July 21st 2016&lt;br /&gt;
* August 18th 2016&lt;br /&gt;
* September 22nd 2016&lt;br /&gt;
* October 20th 2016&lt;br /&gt;
* November 17th 2016&lt;br /&gt;
* December 22nd 2016&lt;br /&gt;
* January 19th 2017&lt;br /&gt;
* February 23rd 2017&lt;br /&gt;
* March 23rd 2017&lt;br /&gt;
* April 20th 2017&lt;br /&gt;
* May 18th 2017&lt;br /&gt;
* June 22nd 2017&lt;br /&gt;
* July 20th 2017&lt;br /&gt;
* August 17th 2017&lt;br /&gt;
* September 21st 2017&lt;br /&gt;
* October 19th 2017&lt;br /&gt;
* December 21st 2017&lt;br /&gt;
* January 18th 2018&lt;br /&gt;
* February 22nd 2018&lt;br /&gt;
* March 22nd 2018&lt;br /&gt;
* April 19th 2018&lt;br /&gt;
* May 17th 2018&lt;br /&gt;
* June 21st 2018&lt;br /&gt;
* July 19th 2018&lt;br /&gt;
* August 23rd 2018&lt;br /&gt;
* September 20th 2018&lt;br /&gt;
* October 18th 2018&lt;br /&gt;
* December 20th 2018&lt;br /&gt;
* January 24th 2019&lt;br /&gt;
* February 21st 2019&lt;br /&gt;
* April 18th 2019&lt;br /&gt;
* May 23rd 2019&lt;br /&gt;
* June 20th 2019&lt;br /&gt;
* July 18th 2019&lt;br /&gt;
* August 22nd 2019&lt;br /&gt;
* September 19th 2019&lt;br /&gt;
* October 17th 2019&lt;br /&gt;
* November 21st 2019&lt;br /&gt;
* December 19th 2019&lt;br /&gt;
* January 23rd 2020&lt;br /&gt;
* February 20th 2020&lt;br /&gt;
* April 23rd 2020 - BEGIN time of 5pm-7pm for this window through August 19th 2021&lt;br /&gt;
* June 18th 2020&lt;br /&gt;
* July 23rd 2020&lt;br /&gt;
* August 20th 2020&lt;br /&gt;
* September 17th 2020&lt;br /&gt;
* October 22nd 2020&lt;br /&gt;
* November 19th 2020&lt;br /&gt;
* December 17th 2020&lt;br /&gt;
* January 21st 2021&lt;br /&gt;
* February 18th 2021&lt;br /&gt;
* March 25th 2021 (Adjusted date for extended Spring Break)&lt;br /&gt;
* April 22nd 2021&lt;br /&gt;
* May 20th 2021&lt;br /&gt;
* June 17th 2021&lt;br /&gt;
* July 22nd 2021&lt;br /&gt;
* August 19th 2021&lt;br /&gt;
* September 23rd 2021 - BEGIN time of 5pm-8pm for this window and all others below&lt;br /&gt;
* October 21st 2021&lt;br /&gt;
* November 18th 2021&lt;br /&gt;
* January 20th 2022&lt;br /&gt;
* February 17th 2022&lt;br /&gt;
* March 24th 2022 (Adjusted date for Spring Break)&lt;br /&gt;
* April 21st 2022&lt;br /&gt;
* May 19th 2022&lt;br /&gt;
* June 23rd 2022&lt;br /&gt;
* July 21st 2022&lt;br /&gt;
* August 18th 2022&lt;br /&gt;
* September 22nd 2022&lt;br /&gt;
* October 20th 2022&lt;br /&gt;
* November 17th 2022&lt;br /&gt;
* January 19th 2023&lt;br /&gt;
* February 23rd 2023&lt;br /&gt;
* April 20th 2023&lt;br /&gt;
* May 18th 2023&lt;br /&gt;
* June 22nd 2023&lt;br /&gt;
* July 20th 2023&lt;br /&gt;
* August 17th 2023&lt;br /&gt;
* September 21st 2023&lt;br /&gt;
* October 19th 2023&lt;br /&gt;
* December 20th 2023 (Adjusted date for early Winter Break)&lt;br /&gt;
* January 18th 2024&lt;br /&gt;
* February 22nd 2024&lt;br /&gt;
* March 21st 2024&lt;br /&gt;
* April 18th 2024&lt;br /&gt;
* May 23th 2024&lt;br /&gt;
* June 20th 2024&lt;br /&gt;
* July 18th 2024&lt;br /&gt;
* August 22nd 2024&lt;br /&gt;
* September 19th 2024&lt;br /&gt;
* October 17th 2024&lt;br /&gt;
* November 21st 2024&lt;br /&gt;
* December 19th 2024&lt;br /&gt;
* January 23rd 2025&lt;br /&gt;
* February 20th 2025&lt;br /&gt;
* March 20th 2025&lt;br /&gt;
* April 17th 2025&lt;br /&gt;
* May 22nd 2025&lt;br /&gt;
* June 19th 2025&lt;br /&gt;
* July 17th 2025&lt;br /&gt;
* August 21st 2025&lt;br /&gt;
* September 18th 2025&lt;br /&gt;
* October 23rd 2025&lt;br /&gt;
* November 20th 2025&lt;br /&gt;
* December 18th 2025&lt;br /&gt;
* January 22nd 2026&lt;br /&gt;
* February 19th 2026&lt;br /&gt;
* March 19th 2026&lt;br /&gt;
* April 23rd 2026&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=BarracudaSpamFirewall&amp;diff=13267</id>
		<title>BarracudaSpamFirewall</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=BarracudaSpamFirewall&amp;diff=13267"/>
		<updated>2026-05-11T19:57:33Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Introduction===&lt;br /&gt;
UMIACS has deployed a system with two Barracuda Networks spam firewalls. This allows for enterprise level Virus and Spam scoring and filtering for our email architecture. You can log in to the system either of the two firewalls using your UMIACS email address (username@umiacs.umd.edu) and UMD directory passphrase:&lt;br /&gt;
*[https://bubs.umiacs.umd.edu bubs.umiacs.umd.edu]&lt;br /&gt;
*[https://pompom.umiacs.umd.edu pompom.umiacs.umd.edu]&lt;br /&gt;
&lt;br /&gt;
===Mail Flow Through Barracudas===&lt;br /&gt;
*The first time your mail flows through one of the Barracudas it will send you a mail with a new username and password. Subsequently, you will receive, every day (unless you configure otherwise), a mail at approximately 3:30pm US Eastern from the Barracuda with your quarantine summary. &#039;&#039;&#039;Please note that the links provides in the Actions column in the summary do not work anymore due to security hardening on the Barracudas. Please use the links provided above to log in.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Scoring===&lt;br /&gt;
The Barracudas will score every message that passes through them and inject varying message headers based on that score.  You can then create email filters based on these headers to filter out messages that are tagged as spam by the Barracudas. See [[BarracudaSpamFirewall/Scoring]] for more details.&lt;br /&gt;
&lt;br /&gt;
===Quarantine===&lt;br /&gt;
*Mail that has been deemed as spam will be kept on the Barracudas in quarantine.  It will not be delivered to your mailbox unless you configure the Barracudas to do so.&lt;br /&gt;
*Your quarantine will be preserved for &#039;&#039;&#039;21 days&#039;&#039;&#039;. Individual mail messages are purged if they are still in the quarantine 22 days after they are first received.&lt;br /&gt;
*You can search your spam quarantine by following the steps [[BarracudaSpamFirewall/SearchingQuarantine | here]].&lt;br /&gt;
&lt;br /&gt;
===Quarantine Passthrough===&lt;br /&gt;
*If you wish to have the mail that would ordinarily be quarantined by Barracuda delivered to your mailbox instead you can configure this using the Barracuda web configuration.&lt;br /&gt;
*You can enable this functionality by following the steps [[BarracudaSpamFirewall/QuarantinePassthrough | here]].&lt;br /&gt;
&lt;br /&gt;
===Allow Lists, Block Lists, and Bayesian Filtering===&lt;br /&gt;
*You may also setup allow lists, block lists, and Bayesian filtering options through the Preferences tab at the top of the Barracuda web portal.&lt;br /&gt;
&lt;br /&gt;
===More Information===&lt;br /&gt;
*For more information on how to use the Barracuda please download the user&#039;s guide:&lt;br /&gt;
&lt;br /&gt;
https://wiki.umiacs.umd.edu/umiacs/images/5/5a/Barracuda_usersguide.pdf&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=BarracudaSpamFirewall&amp;diff=13266</id>
		<title>BarracudaSpamFirewall</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=BarracudaSpamFirewall&amp;diff=13266"/>
		<updated>2026-05-11T19:56:37Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Introduction===&lt;br /&gt;
UMIACS has deployed a system with two Barracuda Networks spam firewalls. This allows for enterprise level Virus and Spam scoring and filtering for our email architecture. You can log in to the system either of the two firewalls using your UMIACS email address (username@umiacs.umd.edu) and UMD passphrase:&lt;br /&gt;
*[https://bubs.umiacs.umd.edu bubs.umiacs.umd.edu]&lt;br /&gt;
*[https://pompom.umiacs.umd.edu pompom.umiacs.umd.edu]&lt;br /&gt;
&lt;br /&gt;
===Mail Flow Through Barracudas===&lt;br /&gt;
*The first time your mail flows through one of the Barracudas it will send you a mail with a new username and password. Subsequently, you will receive, every day (unless you configure otherwise), a mail at approximately 3:30pm US Eastern from the Barracuda with your quarantine summary. &#039;&#039;&#039;Please note that the links provides in the Actions column in the summary do not work anymore due to security hardening on the Barracudas. Please use the links provided above to log in.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Scoring===&lt;br /&gt;
The Barracudas will score every message that passes through them and inject varying message headers based on that score.  You can then create email filters based on these headers to filter out messages that are tagged as spam by the Barracudas. See [[BarracudaSpamFirewall/Scoring]] for more details.&lt;br /&gt;
&lt;br /&gt;
===Quarantine===&lt;br /&gt;
*Mail that has been deemed as spam will be kept on the Barracudas in quarantine.  It will not be delivered to your mailbox unless you configure the Barracudas to do so.&lt;br /&gt;
*Your quarantine will be preserved for &#039;&#039;&#039;21 days&#039;&#039;&#039;. Individual mail messages are purged if they are still in the quarantine 22 days after they are first received.&lt;br /&gt;
*You can search your spam quarantine by following the steps [[BarracudaSpamFirewall/SearchingQuarantine | here]].&lt;br /&gt;
&lt;br /&gt;
===Quarantine Passthrough===&lt;br /&gt;
*If you wish to have the mail that would ordinarily be quarantined by Barracuda delivered to your mailbox instead you can configure this using the Barracuda web configuration.&lt;br /&gt;
*You can enable this functionality by following the steps [[BarracudaSpamFirewall/QuarantinePassthrough | here]].&lt;br /&gt;
&lt;br /&gt;
===Allow Lists, Block Lists, and Bayesian Filtering===&lt;br /&gt;
*You may also setup allow lists, block lists, and Bayesian filtering options through the Preferences tab at the top of the Barracuda web portal.&lt;br /&gt;
&lt;br /&gt;
===More Information===&lt;br /&gt;
*For more information on how to use the Barracuda please download the user&#039;s guide:&lt;br /&gt;
&lt;br /&gt;
https://wiki.umiacs.umd.edu/umiacs/images/5/5a/Barracuda_usersguide.pdf&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
	<entry>
		<id>https://wiki.umiacs.umd.edu/umiacs/index.php?title=BarracudaSpamFirewall&amp;diff=13265</id>
		<title>BarracudaSpamFirewall</title>
		<link rel="alternate" type="text/html" href="https://wiki.umiacs.umd.edu/umiacs/index.php?title=BarracudaSpamFirewall&amp;diff=13265"/>
		<updated>2026-05-11T19:51:52Z</updated>

		<summary type="html">&lt;p&gt;Mbaney: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===Introduction===&lt;br /&gt;
UMIACS has deployed a system with two Barracuda Networks spam firewalls. This allows for enterprise level Virus and Spam scoring and filtering for our email architecture. You can log in to the system either of the two firewalls using your UMIACS email address (username@umiacs.umd.edu) and UMD passphrase:&lt;br /&gt;
*[https://bubs.umiacs.umd.edu bubs.umiacs.umd.edu]&lt;br /&gt;
*[https://pompom.umiacs.umd.edu pompom.umiacs.umd.edu]&lt;br /&gt;
&lt;br /&gt;
===Mail Flow Through Barracudas===&lt;br /&gt;
*The first time your mail flows through one of the Barracudas it will send you a mail with a new username and password. Subsequently, you will receive, every day (unless you configure otherwise), a mail at approximately 3:30pm US Eastern from the Barracuda with your quarantine summary. &#039;&#039;&#039;Please note that auto log-in through the link provided in the summary does not work anymore due to security hardening on the Barracudas. Please use the links provided above to log in.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Scoring===&lt;br /&gt;
The Barracudas will score every message that passes through them and inject varying message headers based on that score.  You can then create email filters based on these headers to filter out messages that are tagged as spam by the Barracudas. See [[BarracudaSpamFirewall/Scoring]] for more details.&lt;br /&gt;
&lt;br /&gt;
===Quarantine===&lt;br /&gt;
*Mail that has been deemed as spam will be kept on the Barracudas in quarantine.  It will not be delivered to your mailbox unless you configure the Barracudas to do so.&lt;br /&gt;
*Your quarantine will be preserved for &#039;&#039;&#039;21 days&#039;&#039;&#039;. Individual mail messages are purged if they are still in the quarantine 22 days after they are first received.&lt;br /&gt;
*You can search your spam quarantine by following the steps [[BarracudaSpamFirewall/SearchingQuarantine | here]].&lt;br /&gt;
&lt;br /&gt;
===Quarantine Passthrough===&lt;br /&gt;
*If you wish to have the mail that would ordinarily be quarantined by Barracuda delivered to your mailbox instead you can configure this using the Barracuda web configuration.&lt;br /&gt;
*You can enable this functionality by following the steps [[BarracudaSpamFirewall/QuarantinePassthrough | here]].&lt;br /&gt;
&lt;br /&gt;
===Whitelists, Blacklists &amp;amp; Bayesian Filtering===&lt;br /&gt;
*You may also setup whitelists, blacklists, and Bayesian filtering options through the Preferences tab at the top of the Barracuda web portal.&lt;br /&gt;
&lt;br /&gt;
===More Information===&lt;br /&gt;
*For more information on how to use the Barracuda please download the user&#039;s guide:&lt;br /&gt;
&lt;br /&gt;
https://wiki.umiacs.umd.edu/umiacs/images/5/5a/Barracuda_usersguide.pdf&lt;/div&gt;</summary>
		<author><name>Mbaney</name></author>
	</entry>
</feed>