<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://info.stat.cmu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jacobg2</id>
	<title>Stat DS Computing Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://info.stat.cmu.edu/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jacobg2"/>
	<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Special:Contributions/Jacobg2"/>
	<updated>2026-11-05T00:06:42Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=982</id>
		<title>Wright GPU Cluster</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=982"/>
		<updated>2026-10-12T18:12:15Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Citing Wright */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
The department has access to a powerful GPU-based cluster named [[wikipedia:Sewall_Wright|Wright]]&amp;amp;nbsp;which is hosted here at CMU.&amp;amp;nbsp;This is a 4-node and growing cluster that is a shared resource for Statistics &amp;amp; Data Science, Philosophy, and other departments in Dietrich College. Each department has priority access to its own compute node, but will be able to share the resources from other departments when not in use.&lt;br /&gt;
&lt;br /&gt;
== Access requests ==&lt;br /&gt;
This resource&amp;amp;nbsp;is free to use to users in the Departments of Statistics &amp;amp; Data Science, Philosophy, and CMIST. These departments set policies determining which of their users are eligible.&amp;amp;nbsp;Users outside these departments must be sponsored by someone in the eligible departments, as part of a project or collaboration.&lt;br /&gt;
&lt;br /&gt;
To request access, complete the [https://docs.google.com/forms/d/e/1FAIpQLSftCsplE06whGocn62DhwC6NpDSgZ-DMmUacrQID_slIfg6sA/viewform access request form] and our team will be in touch to discuss your request and onboard you.&lt;br /&gt;
&lt;br /&gt;
== Cluster setup ==&lt;br /&gt;
The cluster currently consists of 4 servers:&lt;br /&gt;
*The head node: You log in to this to write code and run jobs. It has 128 GB of RAM, 16 cores, and &#039;&#039;&#039;no GPU&#039;&#039;&#039;.&lt;br /&gt;
*The compute nodes: Jobs run on these. Each has 256 CPU cores, 8 NVIDIA L40 GPU cards with 48 GB of video RAM each, approximately 1 TB of RAM, and a total of approximately 3 TB of local data/scratch space.&lt;br /&gt;
*The file server: Holds 50TB of storage. The head node and compute nodes connect via fiberoptic networking. Your home directory is hosted on the file server, so the same files are accessible on the head node and all compute nodes.&lt;br /&gt;
**Statistics &amp;amp; Data Science accounts are limited to 5TB of space. More can be requested if required.&lt;br /&gt;
The cluster is currently partitioned. One compute node is reserved for each department involved.&lt;br /&gt;
&lt;br /&gt;
The file server has quotas enabled so that each department gets 1/3rd of the available storage. If a department user tries to add files beyond the quota, the writes will be rejected, and nobody in that department will be able to add files until space is freed. To check the quotas and your own usage, [https://util.stat.cmu.edu/quotareport/ view the quota report].&lt;br /&gt;
&lt;br /&gt;
== Connecting and setting up your environment ==&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
From your terminal, type&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh &amp;lt;YourStatID&amp;gt;@wright.hss.cmu.edu&amp;lt;/code&amp;gt;&amp;amp;nbsp;. You can also avoid remembering this by adding the following snippet to your local&amp;amp;nbsp;&amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&lt;br /&gt;
&amp;lt;pre&amp;gt;Host wright&lt;br /&gt;
    Hostname wright.hss.cmu.edu&lt;br /&gt;
    User YourStatID&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then connect by simply typing&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh wright&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
This connects you to the &#039;&#039;&#039;head node.&#039;&#039;&#039; Here you can upload your data files, set up your scripts, and test things.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Do not run resource-intensive tasks directly on the head node&#039;&#039;&#039;. It doesn&#039;t have any GPUs, and it has fewer resources than the compute nodes. You can do quick tests to make sure your scripts are set up correctly, but submit all other jobs through Slurm.&lt;br /&gt;
&lt;br /&gt;
=== Uploading files ===&lt;br /&gt;
To upload scripts or data files, you can use &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt; from your local computer (Mac or Linux); on Windows, you can get the Tectia SSH graphical client [https://www.cmu.edu/computing/services/endpoint/software/access.html free through CMU].&lt;br /&gt;
&lt;br /&gt;
You can&amp;amp;nbsp;also connect through the [https://code.visualstudio.com/docs/remote/ssh Remote SSH feature of VS Code] if you like. This is useful to&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
*navigate the file system from a proper GUI and&amp;amp;nbsp; &lt;br /&gt;
*modify code/files/folder in place if you are not familiar with the command line &lt;br /&gt;
Files uploaded to your home directory will be accessible on the head node and all compute nodes, so they can be freely used in compute jobs.&lt;br /&gt;
&lt;br /&gt;
=== Using Conda ===&lt;br /&gt;
The head node has Anaconda installed for managing Python packages and system libraries; see [[Python virtual environments]] for information on how to use it (but note it&#039;s &#039;&#039;&#039;already installed&#039;&#039;&#039;, so you don&#039;t need to install it from scratch!).&lt;br /&gt;
&lt;br /&gt;
However, the compute nodes &#039;&#039;&#039;do not&#039;&#039;&#039; have conda, so your slurm jobs can&#039;t use &amp;lt;code&amp;gt;conda activate&amp;lt;/code&amp;gt; or other familiar commands. Instead, set up your environment on the head node, activate it, install the packages you need, and so on. Then run &amp;lt;code&amp;gt;which python&amp;lt;/code&amp;gt; to get the path to the Python executable in your environment. For instance:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ which python&lt;br /&gt;
/home/export/areinhar/.conda/envs/llm/bin/python&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This is the path you&#039;ll use in your scripts (see below).&lt;br /&gt;
&lt;br /&gt;
=== Open OnDemand ===&lt;br /&gt;
&lt;br /&gt;
Open OnDemand is a graphical interface where you can run jobs, interactive applications, and manage files. More information can be found [[Open OnDemand Wright|here]].&lt;br /&gt;
&lt;br /&gt;
== Job scheduling and prioritization ==&lt;br /&gt;
&lt;br /&gt;
The GPU cluster manages jobs via [[Slurm]].&amp;amp;nbsp;Slurm is a job management system that deals with job prioritization and the allocation of resources. On high-performance computers (e.g., PSC and our GPU cluster) Slurm helps allocate resources so multiple jobs can be run quickly.&amp;amp;nbsp;Users run programs by submitting scripts to the Slurm job scheduler, and the scheduler runs them when resources are available.&lt;br /&gt;
=== Queue status ===&lt;br /&gt;
&lt;br /&gt;
To check what jobs are running, use &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. The following options list more helpful information than the default (though you need a wide terminal to read it all):&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ squeue -O &amp;quot;JobID:7,UserName:10,Partition:12,TimeUsed:12,ReasonList,MinCPUS:9,MinMemory:12,tres-per-node,StartTime,EndTime&amp;quot;&lt;br /&gt;
JOBID  USER      PARTITION   TIME        NODELIST(REASON)    MIN_CPUS MIN_MEMORY  TRES_PER_NODE       START_TIME          END_TIME            &lt;br /&gt;
36229  ebensen   all         0:00        (DependencyNeverSati16       128G        N/A                 N/A                 N/A                 &lt;br /&gt;
36237  ajshen    all         12:35:57    n02                 2        64G         gres:gpu:1          2026-01-26T21:55:23 2026-01-28T21:55:23 &lt;br /&gt;
36152  msezgin   all         1-02:32:04  n03                 1        64G         gres:gpu:1          2026-01-26T07:59:16 2026-01-28T07:59:16 &lt;br /&gt;
36132  tsukiant  cmist_condo 1-11:00:02  n03                 16       8G          gres:gpu:1          2026-01-25T23:31:18 2026-01-27T23:31:18 &lt;br /&gt;
36100  tsukiant  cmist_condo 1-17:32:39  n03                 16       8G          gres:gpu:1          2026-01-25T16:58:41 2026-01-27T16:58:41 &lt;br /&gt;
36090  tsukiant  cmist_condo 1-18:22:51  n03                 16       8G          gres:gpu:1          2026-01-25T16:08:29 2026-01-27T16:08:29 &lt;br /&gt;
36247  jwalches  statds      42:38       n01                 40       15G         gres:gpu:3          2026-01-27T09:48:42 2026-01-29T09:48:42 &lt;br /&gt;
36051  xiangchs  statds_condo7:05:24     n01                 64       128G        gres:gpu:4          2026-01-27T03:25:56 2026-01-29T03:25:56 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here we see there are two jobs running on node 1, one on node 2, four on node 3, and one job that is not running because it was submitted with requirements that will not be met. The listed end times are based on the time limit specified when the job was submitted, so the jobs may end sooner. If you submit a job that is waiting for resources, the reason will be listed as &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt;, and after a few minutes Slurm will list a start time for your job based on when other jobs will finish and free up resources.&lt;br /&gt;
&lt;br /&gt;
To check what resources are currently in use, use &amp;lt;code&amp;gt;sinfo&amp;lt;/code&amp;gt;:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ sinfo -O &amp;quot;NodeList:10,CPUsState:16,Memory:9,FreeMem:10,Gres:20,GresUsed:30&amp;quot;&lt;br /&gt;
NODELIST  CPUS(A/I/O/T)   MEMORY   FREE_MEM  GRES                GRES_USED                     &lt;br /&gt;
n01       64/192/0/256    1000000  221943    gpu:nvidia-l40:8    gpu:nvidia-l40:8(IDX:0-7)     &lt;br /&gt;
n02       32/224/0/256    1000000  225575    gpu:nvidia-l40:8    gpu:nvidia-l40:0(IDX:N/A)                    &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This shows that node 1 (Statistics &amp;amp; Data Science) has 64 CPUs allocated and 192 idle, out of 256 total. There is 1TB of RAM, of which 222 GB is free. There are 8 NVIDIA L40 GPus, all 8 of which are in use. Hence if we submit a job to the statds partition requesting any GPUs, it will have to wait until some become free. Meanwhile, node 2 (Philosophy) has no GPUs in use.&lt;br /&gt;
&lt;br /&gt;
=== Partitions ===&lt;br /&gt;
The cluster is divided into three main partitions:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; (Statistics &amp;amp; Data Science)&lt;br /&gt;
* &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; (Philosophy)&lt;br /&gt;
* &amp;lt;code&amp;gt;cmist&amp;lt;/code&amp;gt; (CMIST)&lt;br /&gt;
&lt;br /&gt;
Jobs are submitted to a partition. &#039;&#039;&#039;The main partitions will only accept jobs from users in the corresponding department&#039;&#039;&#039; -- jobs submitted to the wrong partition will be rejected. Partitions correspond to nodes, so this ensures each department&#039;s jobs use their own node.  &lt;br /&gt;
&lt;br /&gt;
If you want to use other nodes, you can submit jobs to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. This requests any available node from any partition, so your job will run on whichever node has resources available. However, your job will have lower priority, as described below; if your all job runs on the philosophy node, a user who submits to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; can preempt your job, causing it to be killed to make room for them, then restarted after their job is done. See Job Etiquette below for when to use &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
If you want to use a specific node within &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; you can specify the node within your submit script as shown below.&amp;lt;syntaxhighlight lang=&amp;quot;batch&amp;quot;&amp;gt;&lt;br /&gt;
#SBATCH --nodelist=n03&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Job prioritization ===&lt;br /&gt;
Slurm runs jobs based on the resources they request and what is available. If resources aren&#039;t available for your job, slurm will put it in the queue and wait until other jobs finish. However, it&#039;s not simply a first-in first-out queue -- Slurm attempts to arrange the jobs so every job can run, even if that means running them out of order. Partitions have different quality-of-service (QOS) values that affect their prioritization, and Slurm also adjusts each user&#039;s priority based on how many jobs they submit, so that one user can&#039;t hog the cluster by submitting dozens of jobs; if one user has many jobs waiting, theirs will be reduced in priority so other users can run jobs as well.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 4 GPUs on the same partition. The compute node only has 8 GPUs, so Job B will be queued until Job A completes.&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 2 GPUs. Job B can run immediately.&lt;br /&gt;
* You submit a job that requires all 8 GPUs on a node, but 4 are currently in use. Your job is put in the queue and scheduled to run when Slurm knows the current jobs will finish (because of their maximum time limit). Meanwhile, someone submits a job using 2 GPUs and a short time limit. Slurm lets it run immediately, because it knows it will be done before your job is scheduled to run. Other jobs may be put off until after yours runs, so yours can get the 8 GPUs it needs.&lt;br /&gt;
* You submit 50 jobs that each require 1 GPU. The node has only 8 GPUs, but several are in use. Several of your jobs run, but the others are queued for later. The fair-sharing system assigns them a lower priority, because you have run so many jobs, and jobs submitted by other users will run first.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Someone else submits Job B to &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt;.  The &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition has lower QOS, so Job B will get to use the StatDS node first, and Job A will either wait or use a different node.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. It begins to run on the philosophy node. Someone else submits Job B to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt;, and there are insufficient resources to run both at the same time. Job A is killed, Job B runs, and Job A is placed back into the queue to be run when resources are available.&lt;br /&gt;
You can view the currently running or queued jobs by running &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt; on the head node, as described above. The &amp;lt;code&amp;gt;NODELIST(REASON)&amp;lt;/code&amp;gt; column will indicate which jobs are queued by giving special codes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; means there are not enough resources (CPUs, memory, or GPUs) available for the job. It will run once the resources are free.&lt;br /&gt;
* &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt; means resources are available, but Slurm wants to run a higher-priority job first. For example, maybe a large job has been waiting for resources for two days before you submit your job; Slurm may make your job wait so the large job can start first.&lt;br /&gt;
&lt;br /&gt;
=== Job etiquette ===&lt;br /&gt;
The cluster is shared between users and departments. Therefore:&lt;br /&gt;
&lt;br /&gt;
* Request the minimum resources required for your job, so other users can access other resources.&lt;br /&gt;
* For ordinary one-off jobs, use your department&#039;s partition so you get top priority for your node.&lt;br /&gt;
* If you need to submit a large number of jobs and aren&#039;t in a hurry, consider using the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Using &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; lets you get all available resources, but at lower priority, so other users can run jobs as well and you don&#039;t hog the cluster.&lt;br /&gt;
* Watch your disk space usage. With large deep models it is easy to use many terabytes of storage, and each department has a quota. [https://util.stat.cmu.edu/quotareport/ You can check the quota and your own usage here.]&lt;br /&gt;
&lt;br /&gt;
=== Job limits ===&lt;br /&gt;
There is no practical limit to the number of jobs you can have in the queue at a time (there is a maximum size limit for job arrays that can be checked via &amp;lt;code&amp;gt;scontrol show config | grep MaxArraySize&amp;lt;/code&amp;gt;. However, in order to prevent resource monopolization, &#039;&#039;&#039;no user can have more than 6 jobs running at once on the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&#039;&#039;&#039; If a user submits more than 6 jobs to the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition, the excess jobs will sit in the queue until one or more of the first 6 are completed. &#039;&#039;&#039;This limit does not apply to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition&#039;&#039;&#039;, so we encourage users with a large number of jobs to use the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition instead of the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&lt;br /&gt;
&lt;br /&gt;
== Setting up jobs ==&lt;br /&gt;
&lt;br /&gt;
=== Submitting batch jobs ===&lt;br /&gt;
The best way to run jobs is by writing a shell script specifying the Slurm options. To launch a batch job from a script you will need two files:&lt;br /&gt;
&lt;br /&gt;
*the actual script in your favorite programming language that does whatever computation you want&lt;br /&gt;
*a bash script that requests the resources you need from Slurm and gives the commands to launch your job.&lt;br /&gt;
A typical bash script might look like this:&amp;lt;pre&amp;gt;#!/bin/bash&lt;br /&gt;
# specify partition to run in (statds, phil, or cmist)&lt;br /&gt;
#SBATCH --partition statds&lt;br /&gt;
#SBATCH --ntasks 1&lt;br /&gt;
#SBATCH --job-name=nameofyourjob&lt;br /&gt;
&lt;br /&gt;
# number of CPUs you need:&lt;br /&gt;
#SBATCH --cpus-per-task 1&lt;br /&gt;
&lt;br /&gt;
# amount of memory per CPU&lt;br /&gt;
# (total allocated is CPUs * memory)&lt;br /&gt;
#SBATCH --mem-per-cpu 4G&lt;br /&gt;
&lt;br /&gt;
# number of GPUs you need&lt;br /&gt;
#SBATCH --gres=gpu:1&lt;br /&gt;
&lt;br /&gt;
# maximum time limit for job, HH:MM:SS (up to 48 hours max, 48:00:00)&lt;br /&gt;
#SBATCH --time=01:00:00&lt;br /&gt;
&lt;br /&gt;
# email you when job is finished or errors out:&lt;br /&gt;
#SBATCH --mail-user=YourAndrewID@andrew.cmu.edu&lt;br /&gt;
#SBATCH --mail-type=END,FAIL&lt;br /&gt;
&lt;br /&gt;
## Choose one:&lt;br /&gt;
&lt;br /&gt;
# to run a Python script in a Conda environment called ENV&lt;br /&gt;
srun /home/export/YOURANDREWID/.conda/envs/ENV/bin/python YourScript.py&lt;br /&gt;
&lt;br /&gt;
# to run an R script:&lt;br /&gt;
srun Rscript YourScript.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;Adjust the number of CPUs, number of GPUs, memory usage, and time limit based on the needs of your script. Requesting more than you need may result in your job having to wait for resources to free up; requesting a long time you don&#039;t need will block slurm from scheduling other jobs for when yours will be done. (And if you request more resources than exist on the compute nodes, your job will be queued forever while it waits for resources to appear.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;&amp;amp;nbsp;Slurm batch jobs are limited to a maximum duration of 48 hours. Jobs running longer will be killed.&lt;br /&gt;
&lt;br /&gt;
To run the job, SSH into the head node and navigate to the directory with your scripts. Then run:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sbatch example.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;where &amp;lt;code&amp;gt;example.sh&amp;lt;/code&amp;gt; is the name of your bash script.&lt;br /&gt;
&lt;br /&gt;
You will see a message like &amp;quot;Submitted batch job 1209&amp;quot; when your job is submitted. Any printed output from your script will automatically be redirected to a file based on the job number -- in this case, &amp;lt;code&amp;gt;slurm-1209.out&amp;lt;/code&amp;gt;. You can use &amp;lt;code&amp;gt;tail -f slurm-1209.out&amp;lt;/code&amp;gt; to view the output live and monitor your script&#039;s progress.&lt;br /&gt;
&lt;br /&gt;
=== Selecting the right resources ===&lt;br /&gt;
In the Slurm script above, you can choose the number of tasks, the number of GPUs, the memory per CPU, the number of GPUs, and the time limit. Choose these values wisely:&lt;br /&gt;
&lt;br /&gt;
* You generally want &#039;&#039;&#039;1 task&#039;&#039;&#039; (&amp;lt;code&amp;gt;--ntasks 1&amp;lt;/code&amp;gt;). Asking for multiple tasks will cause srun to run multiple copies of your script simultaneously. If you need to run the same script with 10 different parameter values, this can be useful: request 10 tasks, and read the &amp;lt;code&amp;gt;SLURM_PROCID&amp;lt;/code&amp;gt; environment variable in your script. It will be numbered 0-9 (for 10 tasks), so you can use this to set the parameter values for each parallel run.&lt;br /&gt;
* Set the number of CPUs based on your script. If your script is entirely single-threaded, ask for 1. If you use parallel processing (such as with multiprocessing in Python or the parallel package in R), use a multithreaded package, or spawn many parallel programs in your job, request more.&lt;br /&gt;
* Request the minimum amount of memory (RAM) needed for your script. This is per-CPU, so requesting a lot of CPUs and RAM can easily mean you request more RAM than exists on the node.&lt;br /&gt;
* Start with 1 GPU, adding more if your job requires more GPU memory (VRAM) than is on one GPU, or if you explicitly write your script to use more. If you do not use GPUs, request 0 so you aren&#039;t allocated a GPU that nobody else can use while your job runs.&lt;br /&gt;
* Set the time limit a little longer than you expect your script to run. Slurm uses the time limit when scheduling, so always choosing the maximum (48 hours) will backfire: Slurm will assume your job will take a long time and will run other things first. If you know your job can only take an hour, setting, say, a 01:30:00 time limit will let Slurm fit your job in before other long jobs in the queue. But of course if you choose too low and your job exceeds the limit, it will be killed, so leave yourself some extra time.&lt;br /&gt;
&lt;br /&gt;
=== Interactive mode ===&lt;br /&gt;
&lt;br /&gt;
You can also run interactive sessions that allow you to, say, run an R or Python console and type commands and immediately view the output. From the head node, run a command like:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# remember to edit to correct partition:&lt;br /&gt;
srun --partition statds --ntasks 1 \&lt;br /&gt;
    --cpus-per-task 16 --mem-per-cpu 4G \&lt;br /&gt;
    --gres=gpu:1 --time=01:00:00 --pty \&lt;br /&gt;
    bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This runs a job that opens a bash shell on the compute node, and connects you directly to this job. You can now run bash commands, open Python, or run R scripts. Note your interactive session has a time limit and will be killed when it elapses, so set the time limit carefully and choose the resource amounts in the command according to your needs.&lt;br /&gt;
&lt;br /&gt;
Interactive sessions are limited to &#039;&#039;&#039;two hours maximum&#039;&#039;&#039;. You cannot request a longer time limit. This is because interactive sessions are inefficient, with the cluster spending most of its time waiting for you to type something instead of running code. For large tasks, submit a batch job.&lt;br /&gt;
&lt;br /&gt;
=== Interactive via VS Code ===&lt;br /&gt;
VS Code supports SSH and tunneling, which allows it to connect to a server and run commands. This allows you to use the Jupyter Notebook support built into VS Code to interact with the GPU cluster. As this uses an interactive session, it&#039;s subject to the same &#039;&#039;&#039;two-hour time limit&#039;&#039;&#039;. Hence notebooks should be used only for exploration and debugging, not large jobs.&lt;br /&gt;
&lt;br /&gt;
To use this, we need to connect to the head node, run an interactive Slurm session, and then connect VS Code to that Slurm session so it can use it. This takes a few extra steps.&lt;br /&gt;
&lt;br /&gt;
==== Setup ====&lt;br /&gt;
Before you use this for the first time, do the following steps:&lt;br /&gt;
&lt;br /&gt;
*SSH into Wright and run the following to install and unpack the VSCode CLI:&amp;amp;nbsp; &lt;br /&gt;
&amp;lt;pre&amp;gt;curl -Lk &#039;https://code.visualstudio.com/sha/download?build=stable&amp;amp;os=cli-alpine-x64&#039; --output vscode_cli.tar.gz&lt;br /&gt;
tar -xf vscode_cli.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Add the&amp;amp;nbsp;&amp;lt;code&amp;gt;code&amp;lt;/code&amp;gt;&amp;amp;nbsp;executable to your PATH by adding the following to your&amp;amp;nbsp;&amp;lt;code&amp;gt;.bashrc&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&amp;amp;nbsp;&amp;lt;code&amp;gt;export&amp;amp;nbsp;PATH=&amp;quot;~:$PATH&amp;quot;&amp;lt;/code&amp;gt;&amp;lt;pre&amp;gt;echo &#039;export PATH=&amp;quot;$PATH:/path/to/code&amp;quot;&#039; &amp;gt;&amp;gt; ~/.bashrc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In VSCode, install the&amp;amp;nbsp;&amp;lt;code&amp;gt;Remote - Tunnels&amp;lt;/code&amp;gt;&amp;amp;nbsp;extension, then use the VSCode SSH feature to connect to Wright and make sure to install all the local VS Code extensions on the remote machine as well (e.g., Python, Jupyter, ...)&lt;br /&gt;
&lt;br /&gt;
==== Running a session ====&lt;br /&gt;
*In the Wright headnode, launch a Slurm interactive session with &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt;, following the instructions above.&lt;br /&gt;
&lt;br /&gt;
*Inside the interactive session, run&amp;amp;nbsp;&amp;lt;code&amp;gt;code tunnel&amp;lt;/code&amp;gt;&amp;amp;nbsp;and follow the instructions. The first time the system will ask you to name the tunnel and authorize the process via an authenticator, I suggest using GitHub since it usually works quite smoothly. Subsequent tunnels might still ask you to authorize their creation by typing an alphanumerical sequence into a link that appears in the terminal. Once you’ve done that, the tunnel is successfully created.&lt;br /&gt;
*From VSCode, select&amp;amp;nbsp;&amp;lt;code&amp;gt;Connect to Tunnel&amp;lt;/code&amp;gt;, then choose the authentication method you previously used and you will see the tunnel appear in the dropdown. Select it and you will land directly into the interactive session we just created&lt;br /&gt;
*You will now be able to run code and, e.g., Jupyter Notebooks using the compute node allocated by the Slurm interactive session. VS Code will be disconnected when the Slurm session ends, such as when it reaches its time limit.&lt;br /&gt;
Note that if you need to use a conda environment, you&#039;ll have to configure VS Code to use the Python executable you found above, since conda is not installed on the compute nodes.&lt;br /&gt;
&lt;br /&gt;
=== SSH to Compute Nodes ===&lt;br /&gt;
The ability to SSH directly to compute nodes is disabled. You can run the command below to start a bash terminal on a compute node when running a batch job. This allows for the same functionality as SSH.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
srun --jobid=yourjobidhere --pty /bin/bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring cluster usage ==&lt;br /&gt;
The [https://util.stat.cmu.edu/grafana/d/Oxed_c6Wz/nvidia-wright-gpu-metrics NVIDIA Wright GPU Metrics Dashboard] shows graphs of GPU usage across the cluster. At the top left, you can select which node to graph, so viewing your department&#039;s node will let you see how GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re developing a long-running job, we recommend checking this dashboard while your job is running. It is easy to accidentally write PyTorch or Tensorflow code that &#039;&#039;&#039;doesn&#039;t actually use the GPU&#039;&#039;&#039;, so check the graphs to see if the expected number of GPUs are in used based on your job&#039;s requirements and the other jobs listed in &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. If they are not, get a terminal on the compute node as described above and run &amp;lt;code&amp;gt;nvidia-smi&amp;lt;/code&amp;gt; to get GPU usage information, including which scripts are accessing the GPU. If your script doesn&#039;t show up, you can debug it to figure out why no GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
== Using scratch storage ==&lt;br /&gt;
Each compute node (but not the head node) has several terabytes of scratch space. This is fast SSD storage that is directly attached to the node, rather than being accessed over the network (like all files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt; are). This is useful if your jobs need to write large temporary files: reading and writing the scratch space is faster than reading and writing files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Your home directory contains a symlink to the scratch space at &amp;lt;code&amp;gt;~/scratch&amp;lt;/code&amp;gt;. To use it, create a directory inside named after your username:&lt;br /&gt;
 mkdir ~/scratch/yourusername&lt;br /&gt;
Then you can read and write files in that directory.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Warnings:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* The scratch space is meant for &#039;&#039;&#039;temporary&#039;&#039;&#039; storage during a job. It may be cleared out during cluster maintenance or if the disk is full.&lt;br /&gt;
* The scratch drives are much smaller than the huge networked disk used for &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;, so be careful what you store in it, and regularly delete files you don&#039;t need.&lt;br /&gt;
* Each node has separate scratch disks, so data you write on one node is &#039;&#039;&#039;not&#039;&#039;&#039; available from any other node, or from the head node.&lt;br /&gt;
&lt;br /&gt;
The scratch space is thus not for final model outputs or results. It is ideal for things like saving checkpoints while your job is running, dumping data to debug a job, saving output from one script to be immediately used by another script, etc.&lt;br /&gt;
&lt;br /&gt;
== Citing Wright ==&lt;br /&gt;
If you use Wright in your research, please make sure to cite it with the text provided below...&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;This research was supported through the computational resources and staff contributions to the Wright HPC GPU cluster at Carnegie Mellon&#039;s Dietrich College of Humanities and Social Sciences provisioned and supported by the Department of Statistics &amp;amp; Data Science, the Department of Philosophy, The Carnegie Mellon Institute for Strategy and Technology, and the Dietrich College Dean&#039;s Office.&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=981</id>
		<title>Wright GPU Cluster</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=981"/>
		<updated>2026-10-12T18:11:05Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Citing Wright */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
The department has access to a powerful GPU-based cluster named [[wikipedia:Sewall_Wright|Wright]]&amp;amp;nbsp;which is hosted here at CMU.&amp;amp;nbsp;This is a 4-node and growing cluster that is a shared resource for Statistics &amp;amp; Data Science, Philosophy, and other departments in Dietrich College. Each department has priority access to its own compute node, but will be able to share the resources from other departments when not in use.&lt;br /&gt;
&lt;br /&gt;
== Access requests ==&lt;br /&gt;
This resource&amp;amp;nbsp;is free to use to users in the Departments of Statistics &amp;amp; Data Science, Philosophy, and CMIST. These departments set policies determining which of their users are eligible.&amp;amp;nbsp;Users outside these departments must be sponsored by someone in the eligible departments, as part of a project or collaboration.&lt;br /&gt;
&lt;br /&gt;
To request access, complete the [https://docs.google.com/forms/d/e/1FAIpQLSftCsplE06whGocn62DhwC6NpDSgZ-DMmUacrQID_slIfg6sA/viewform access request form] and our team will be in touch to discuss your request and onboard you.&lt;br /&gt;
&lt;br /&gt;
== Cluster setup ==&lt;br /&gt;
The cluster currently consists of 4 servers:&lt;br /&gt;
*The head node: You log in to this to write code and run jobs. It has 128 GB of RAM, 16 cores, and &#039;&#039;&#039;no GPU&#039;&#039;&#039;.&lt;br /&gt;
*The compute nodes: Jobs run on these. Each has 256 CPU cores, 8 NVIDIA L40 GPU cards with 48 GB of video RAM each, approximately 1 TB of RAM, and a total of approximately 3 TB of local data/scratch space.&lt;br /&gt;
*The file server: Holds 50TB of storage. The head node and compute nodes connect via fiberoptic networking. Your home directory is hosted on the file server, so the same files are accessible on the head node and all compute nodes.&lt;br /&gt;
**Statistics &amp;amp; Data Science accounts are limited to 5TB of space. More can be requested if required.&lt;br /&gt;
The cluster is currently partitioned. One compute node is reserved for each department involved.&lt;br /&gt;
&lt;br /&gt;
The file server has quotas enabled so that each department gets 1/3rd of the available storage. If a department user tries to add files beyond the quota, the writes will be rejected, and nobody in that department will be able to add files until space is freed. To check the quotas and your own usage, [https://util.stat.cmu.edu/quotareport/ view the quota report].&lt;br /&gt;
&lt;br /&gt;
== Connecting and setting up your environment ==&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
From your terminal, type&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh &amp;lt;YourStatID&amp;gt;@wright.hss.cmu.edu&amp;lt;/code&amp;gt;&amp;amp;nbsp;. You can also avoid remembering this by adding the following snippet to your local&amp;amp;nbsp;&amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&lt;br /&gt;
&amp;lt;pre&amp;gt;Host wright&lt;br /&gt;
    Hostname wright.hss.cmu.edu&lt;br /&gt;
    User YourStatID&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then connect by simply typing&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh wright&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
This connects you to the &#039;&#039;&#039;head node.&#039;&#039;&#039; Here you can upload your data files, set up your scripts, and test things.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Do not run resource-intensive tasks directly on the head node&#039;&#039;&#039;. It doesn&#039;t have any GPUs, and it has fewer resources than the compute nodes. You can do quick tests to make sure your scripts are set up correctly, but submit all other jobs through Slurm.&lt;br /&gt;
&lt;br /&gt;
=== Uploading files ===&lt;br /&gt;
To upload scripts or data files, you can use &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt; from your local computer (Mac or Linux); on Windows, you can get the Tectia SSH graphical client [https://www.cmu.edu/computing/services/endpoint/software/access.html free through CMU].&lt;br /&gt;
&lt;br /&gt;
You can&amp;amp;nbsp;also connect through the [https://code.visualstudio.com/docs/remote/ssh Remote SSH feature of VS Code] if you like. This is useful to&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
*navigate the file system from a proper GUI and&amp;amp;nbsp; &lt;br /&gt;
*modify code/files/folder in place if you are not familiar with the command line &lt;br /&gt;
Files uploaded to your home directory will be accessible on the head node and all compute nodes, so they can be freely used in compute jobs.&lt;br /&gt;
&lt;br /&gt;
=== Using Conda ===&lt;br /&gt;
The head node has Anaconda installed for managing Python packages and system libraries; see [[Python virtual environments]] for information on how to use it (but note it&#039;s &#039;&#039;&#039;already installed&#039;&#039;&#039;, so you don&#039;t need to install it from scratch!).&lt;br /&gt;
&lt;br /&gt;
However, the compute nodes &#039;&#039;&#039;do not&#039;&#039;&#039; have conda, so your slurm jobs can&#039;t use &amp;lt;code&amp;gt;conda activate&amp;lt;/code&amp;gt; or other familiar commands. Instead, set up your environment on the head node, activate it, install the packages you need, and so on. Then run &amp;lt;code&amp;gt;which python&amp;lt;/code&amp;gt; to get the path to the Python executable in your environment. For instance:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ which python&lt;br /&gt;
/home/export/areinhar/.conda/envs/llm/bin/python&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This is the path you&#039;ll use in your scripts (see below).&lt;br /&gt;
&lt;br /&gt;
=== Open OnDemand ===&lt;br /&gt;
&lt;br /&gt;
Open OnDemand is a graphical interface where you can run jobs, interactive applications, and manage files. More information can be found [[Open OnDemand Wright|here]].&lt;br /&gt;
&lt;br /&gt;
== Job scheduling and prioritization ==&lt;br /&gt;
&lt;br /&gt;
The GPU cluster manages jobs via [[Slurm]].&amp;amp;nbsp;Slurm is a job management system that deals with job prioritization and the allocation of resources. On high-performance computers (e.g., PSC and our GPU cluster) Slurm helps allocate resources so multiple jobs can be run quickly.&amp;amp;nbsp;Users run programs by submitting scripts to the Slurm job scheduler, and the scheduler runs them when resources are available.&lt;br /&gt;
=== Queue status ===&lt;br /&gt;
&lt;br /&gt;
To check what jobs are running, use &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. The following options list more helpful information than the default (though you need a wide terminal to read it all):&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ squeue -O &amp;quot;JobID:7,UserName:10,Partition:12,TimeUsed:12,ReasonList,MinCPUS:9,MinMemory:12,tres-per-node,StartTime,EndTime&amp;quot;&lt;br /&gt;
JOBID  USER      PARTITION   TIME        NODELIST(REASON)    MIN_CPUS MIN_MEMORY  TRES_PER_NODE       START_TIME          END_TIME            &lt;br /&gt;
36229  ebensen   all         0:00        (DependencyNeverSati16       128G        N/A                 N/A                 N/A                 &lt;br /&gt;
36237  ajshen    all         12:35:57    n02                 2        64G         gres:gpu:1          2026-01-26T21:55:23 2026-01-28T21:55:23 &lt;br /&gt;
36152  msezgin   all         1-02:32:04  n03                 1        64G         gres:gpu:1          2026-01-26T07:59:16 2026-01-28T07:59:16 &lt;br /&gt;
36132  tsukiant  cmist_condo 1-11:00:02  n03                 16       8G          gres:gpu:1          2026-01-25T23:31:18 2026-01-27T23:31:18 &lt;br /&gt;
36100  tsukiant  cmist_condo 1-17:32:39  n03                 16       8G          gres:gpu:1          2026-01-25T16:58:41 2026-01-27T16:58:41 &lt;br /&gt;
36090  tsukiant  cmist_condo 1-18:22:51  n03                 16       8G          gres:gpu:1          2026-01-25T16:08:29 2026-01-27T16:08:29 &lt;br /&gt;
36247  jwalches  statds      42:38       n01                 40       15G         gres:gpu:3          2026-01-27T09:48:42 2026-01-29T09:48:42 &lt;br /&gt;
36051  xiangchs  statds_condo7:05:24     n01                 64       128G        gres:gpu:4          2026-01-27T03:25:56 2026-01-29T03:25:56 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here we see there are two jobs running on node 1, one on node 2, four on node 3, and one job that is not running because it was submitted with requirements that will not be met. The listed end times are based on the time limit specified when the job was submitted, so the jobs may end sooner. If you submit a job that is waiting for resources, the reason will be listed as &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt;, and after a few minutes Slurm will list a start time for your job based on when other jobs will finish and free up resources.&lt;br /&gt;
&lt;br /&gt;
To check what resources are currently in use, use &amp;lt;code&amp;gt;sinfo&amp;lt;/code&amp;gt;:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ sinfo -O &amp;quot;NodeList:10,CPUsState:16,Memory:9,FreeMem:10,Gres:20,GresUsed:30&amp;quot;&lt;br /&gt;
NODELIST  CPUS(A/I/O/T)   MEMORY   FREE_MEM  GRES                GRES_USED                     &lt;br /&gt;
n01       64/192/0/256    1000000  221943    gpu:nvidia-l40:8    gpu:nvidia-l40:8(IDX:0-7)     &lt;br /&gt;
n02       32/224/0/256    1000000  225575    gpu:nvidia-l40:8    gpu:nvidia-l40:0(IDX:N/A)                    &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This shows that node 1 (Statistics &amp;amp; Data Science) has 64 CPUs allocated and 192 idle, out of 256 total. There is 1TB of RAM, of which 222 GB is free. There are 8 NVIDIA L40 GPus, all 8 of which are in use. Hence if we submit a job to the statds partition requesting any GPUs, it will have to wait until some become free. Meanwhile, node 2 (Philosophy) has no GPUs in use.&lt;br /&gt;
&lt;br /&gt;
=== Partitions ===&lt;br /&gt;
The cluster is divided into three main partitions:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; (Statistics &amp;amp; Data Science)&lt;br /&gt;
* &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; (Philosophy)&lt;br /&gt;
* &amp;lt;code&amp;gt;cmist&amp;lt;/code&amp;gt; (CMIST)&lt;br /&gt;
&lt;br /&gt;
Jobs are submitted to a partition. &#039;&#039;&#039;The main partitions will only accept jobs from users in the corresponding department&#039;&#039;&#039; -- jobs submitted to the wrong partition will be rejected. Partitions correspond to nodes, so this ensures each department&#039;s jobs use their own node.  &lt;br /&gt;
&lt;br /&gt;
If you want to use other nodes, you can submit jobs to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. This requests any available node from any partition, so your job will run on whichever node has resources available. However, your job will have lower priority, as described below; if your all job runs on the philosophy node, a user who submits to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; can preempt your job, causing it to be killed to make room for them, then restarted after their job is done. See Job Etiquette below for when to use &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
If you want to use a specific node within &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; you can specify the node within your submit script as shown below.&amp;lt;syntaxhighlight lang=&amp;quot;batch&amp;quot;&amp;gt;&lt;br /&gt;
#SBATCH --nodelist=n03&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Job prioritization ===&lt;br /&gt;
Slurm runs jobs based on the resources they request and what is available. If resources aren&#039;t available for your job, slurm will put it in the queue and wait until other jobs finish. However, it&#039;s not simply a first-in first-out queue -- Slurm attempts to arrange the jobs so every job can run, even if that means running them out of order. Partitions have different quality-of-service (QOS) values that affect their prioritization, and Slurm also adjusts each user&#039;s priority based on how many jobs they submit, so that one user can&#039;t hog the cluster by submitting dozens of jobs; if one user has many jobs waiting, theirs will be reduced in priority so other users can run jobs as well.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 4 GPUs on the same partition. The compute node only has 8 GPUs, so Job B will be queued until Job A completes.&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 2 GPUs. Job B can run immediately.&lt;br /&gt;
* You submit a job that requires all 8 GPUs on a node, but 4 are currently in use. Your job is put in the queue and scheduled to run when Slurm knows the current jobs will finish (because of their maximum time limit). Meanwhile, someone submits a job using 2 GPUs and a short time limit. Slurm lets it run immediately, because it knows it will be done before your job is scheduled to run. Other jobs may be put off until after yours runs, so yours can get the 8 GPUs it needs.&lt;br /&gt;
* You submit 50 jobs that each require 1 GPU. The node has only 8 GPUs, but several are in use. Several of your jobs run, but the others are queued for later. The fair-sharing system assigns them a lower priority, because you have run so many jobs, and jobs submitted by other users will run first.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Someone else submits Job B to &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt;.  The &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition has lower QOS, so Job B will get to use the StatDS node first, and Job A will either wait or use a different node.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. It begins to run on the philosophy node. Someone else submits Job B to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt;, and there are insufficient resources to run both at the same time. Job A is killed, Job B runs, and Job A is placed back into the queue to be run when resources are available.&lt;br /&gt;
You can view the currently running or queued jobs by running &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt; on the head node, as described above. The &amp;lt;code&amp;gt;NODELIST(REASON)&amp;lt;/code&amp;gt; column will indicate which jobs are queued by giving special codes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; means there are not enough resources (CPUs, memory, or GPUs) available for the job. It will run once the resources are free.&lt;br /&gt;
* &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt; means resources are available, but Slurm wants to run a higher-priority job first. For example, maybe a large job has been waiting for resources for two days before you submit your job; Slurm may make your job wait so the large job can start first.&lt;br /&gt;
&lt;br /&gt;
=== Job etiquette ===&lt;br /&gt;
The cluster is shared between users and departments. Therefore:&lt;br /&gt;
&lt;br /&gt;
* Request the minimum resources required for your job, so other users can access other resources.&lt;br /&gt;
* For ordinary one-off jobs, use your department&#039;s partition so you get top priority for your node.&lt;br /&gt;
* If you need to submit a large number of jobs and aren&#039;t in a hurry, consider using the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Using &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; lets you get all available resources, but at lower priority, so other users can run jobs as well and you don&#039;t hog the cluster.&lt;br /&gt;
* Watch your disk space usage. With large deep models it is easy to use many terabytes of storage, and each department has a quota. [https://util.stat.cmu.edu/quotareport/ You can check the quota and your own usage here.]&lt;br /&gt;
&lt;br /&gt;
=== Job limits ===&lt;br /&gt;
There is no practical limit to the number of jobs you can have in the queue at a time (there is a maximum size limit for job arrays that can be checked via &amp;lt;code&amp;gt;scontrol show config | grep MaxArraySize&amp;lt;/code&amp;gt;. However, in order to prevent resource monopolization, &#039;&#039;&#039;no user can have more than 6 jobs running at once on the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&#039;&#039;&#039; If a user submits more than 6 jobs to the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition, the excess jobs will sit in the queue until one or more of the first 6 are completed. &#039;&#039;&#039;This limit does not apply to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition&#039;&#039;&#039;, so we encourage users with a large number of jobs to use the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition instead of the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&lt;br /&gt;
&lt;br /&gt;
== Setting up jobs ==&lt;br /&gt;
&lt;br /&gt;
=== Submitting batch jobs ===&lt;br /&gt;
The best way to run jobs is by writing a shell script specifying the Slurm options. To launch a batch job from a script you will need two files:&lt;br /&gt;
&lt;br /&gt;
*the actual script in your favorite programming language that does whatever computation you want&lt;br /&gt;
*a bash script that requests the resources you need from Slurm and gives the commands to launch your job.&lt;br /&gt;
A typical bash script might look like this:&amp;lt;pre&amp;gt;#!/bin/bash&lt;br /&gt;
# specify partition to run in (statds, phil, or cmist)&lt;br /&gt;
#SBATCH --partition statds&lt;br /&gt;
#SBATCH --ntasks 1&lt;br /&gt;
#SBATCH --job-name=nameofyourjob&lt;br /&gt;
&lt;br /&gt;
# number of CPUs you need:&lt;br /&gt;
#SBATCH --cpus-per-task 1&lt;br /&gt;
&lt;br /&gt;
# amount of memory per CPU&lt;br /&gt;
# (total allocated is CPUs * memory)&lt;br /&gt;
#SBATCH --mem-per-cpu 4G&lt;br /&gt;
&lt;br /&gt;
# number of GPUs you need&lt;br /&gt;
#SBATCH --gres=gpu:1&lt;br /&gt;
&lt;br /&gt;
# maximum time limit for job, HH:MM:SS (up to 48 hours max, 48:00:00)&lt;br /&gt;
#SBATCH --time=01:00:00&lt;br /&gt;
&lt;br /&gt;
# email you when job is finished or errors out:&lt;br /&gt;
#SBATCH --mail-user=YourAndrewID@andrew.cmu.edu&lt;br /&gt;
#SBATCH --mail-type=END,FAIL&lt;br /&gt;
&lt;br /&gt;
## Choose one:&lt;br /&gt;
&lt;br /&gt;
# to run a Python script in a Conda environment called ENV&lt;br /&gt;
srun /home/export/YOURANDREWID/.conda/envs/ENV/bin/python YourScript.py&lt;br /&gt;
&lt;br /&gt;
# to run an R script:&lt;br /&gt;
srun Rscript YourScript.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;Adjust the number of CPUs, number of GPUs, memory usage, and time limit based on the needs of your script. Requesting more than you need may result in your job having to wait for resources to free up; requesting a long time you don&#039;t need will block slurm from scheduling other jobs for when yours will be done. (And if you request more resources than exist on the compute nodes, your job will be queued forever while it waits for resources to appear.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;&amp;amp;nbsp;Slurm batch jobs are limited to a maximum duration of 48 hours. Jobs running longer will be killed.&lt;br /&gt;
&lt;br /&gt;
To run the job, SSH into the head node and navigate to the directory with your scripts. Then run:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sbatch example.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;where &amp;lt;code&amp;gt;example.sh&amp;lt;/code&amp;gt; is the name of your bash script.&lt;br /&gt;
&lt;br /&gt;
You will see a message like &amp;quot;Submitted batch job 1209&amp;quot; when your job is submitted. Any printed output from your script will automatically be redirected to a file based on the job number -- in this case, &amp;lt;code&amp;gt;slurm-1209.out&amp;lt;/code&amp;gt;. You can use &amp;lt;code&amp;gt;tail -f slurm-1209.out&amp;lt;/code&amp;gt; to view the output live and monitor your script&#039;s progress.&lt;br /&gt;
&lt;br /&gt;
=== Selecting the right resources ===&lt;br /&gt;
In the Slurm script above, you can choose the number of tasks, the number of GPUs, the memory per CPU, the number of GPUs, and the time limit. Choose these values wisely:&lt;br /&gt;
&lt;br /&gt;
* You generally want &#039;&#039;&#039;1 task&#039;&#039;&#039; (&amp;lt;code&amp;gt;--ntasks 1&amp;lt;/code&amp;gt;). Asking for multiple tasks will cause srun to run multiple copies of your script simultaneously. If you need to run the same script with 10 different parameter values, this can be useful: request 10 tasks, and read the &amp;lt;code&amp;gt;SLURM_PROCID&amp;lt;/code&amp;gt; environment variable in your script. It will be numbered 0-9 (for 10 tasks), so you can use this to set the parameter values for each parallel run.&lt;br /&gt;
* Set the number of CPUs based on your script. If your script is entirely single-threaded, ask for 1. If you use parallel processing (such as with multiprocessing in Python or the parallel package in R), use a multithreaded package, or spawn many parallel programs in your job, request more.&lt;br /&gt;
* Request the minimum amount of memory (RAM) needed for your script. This is per-CPU, so requesting a lot of CPUs and RAM can easily mean you request more RAM than exists on the node.&lt;br /&gt;
* Start with 1 GPU, adding more if your job requires more GPU memory (VRAM) than is on one GPU, or if you explicitly write your script to use more. If you do not use GPUs, request 0 so you aren&#039;t allocated a GPU that nobody else can use while your job runs.&lt;br /&gt;
* Set the time limit a little longer than you expect your script to run. Slurm uses the time limit when scheduling, so always choosing the maximum (48 hours) will backfire: Slurm will assume your job will take a long time and will run other things first. If you know your job can only take an hour, setting, say, a 01:30:00 time limit will let Slurm fit your job in before other long jobs in the queue. But of course if you choose too low and your job exceeds the limit, it will be killed, so leave yourself some extra time.&lt;br /&gt;
&lt;br /&gt;
=== Interactive mode ===&lt;br /&gt;
&lt;br /&gt;
You can also run interactive sessions that allow you to, say, run an R or Python console and type commands and immediately view the output. From the head node, run a command like:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# remember to edit to correct partition:&lt;br /&gt;
srun --partition statds --ntasks 1 \&lt;br /&gt;
    --cpus-per-task 16 --mem-per-cpu 4G \&lt;br /&gt;
    --gres=gpu:1 --time=01:00:00 --pty \&lt;br /&gt;
    bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This runs a job that opens a bash shell on the compute node, and connects you directly to this job. You can now run bash commands, open Python, or run R scripts. Note your interactive session has a time limit and will be killed when it elapses, so set the time limit carefully and choose the resource amounts in the command according to your needs.&lt;br /&gt;
&lt;br /&gt;
Interactive sessions are limited to &#039;&#039;&#039;two hours maximum&#039;&#039;&#039;. You cannot request a longer time limit. This is because interactive sessions are inefficient, with the cluster spending most of its time waiting for you to type something instead of running code. For large tasks, submit a batch job.&lt;br /&gt;
&lt;br /&gt;
=== Interactive via VS Code ===&lt;br /&gt;
VS Code supports SSH and tunneling, which allows it to connect to a server and run commands. This allows you to use the Jupyter Notebook support built into VS Code to interact with the GPU cluster. As this uses an interactive session, it&#039;s subject to the same &#039;&#039;&#039;two-hour time limit&#039;&#039;&#039;. Hence notebooks should be used only for exploration and debugging, not large jobs.&lt;br /&gt;
&lt;br /&gt;
To use this, we need to connect to the head node, run an interactive Slurm session, and then connect VS Code to that Slurm session so it can use it. This takes a few extra steps.&lt;br /&gt;
&lt;br /&gt;
==== Setup ====&lt;br /&gt;
Before you use this for the first time, do the following steps:&lt;br /&gt;
&lt;br /&gt;
*SSH into Wright and run the following to install and unpack the VSCode CLI:&amp;amp;nbsp; &lt;br /&gt;
&amp;lt;pre&amp;gt;curl -Lk &#039;https://code.visualstudio.com/sha/download?build=stable&amp;amp;os=cli-alpine-x64&#039; --output vscode_cli.tar.gz&lt;br /&gt;
tar -xf vscode_cli.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Add the&amp;amp;nbsp;&amp;lt;code&amp;gt;code&amp;lt;/code&amp;gt;&amp;amp;nbsp;executable to your PATH by adding the following to your&amp;amp;nbsp;&amp;lt;code&amp;gt;.bashrc&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&amp;amp;nbsp;&amp;lt;code&amp;gt;export&amp;amp;nbsp;PATH=&amp;quot;~:$PATH&amp;quot;&amp;lt;/code&amp;gt;&amp;lt;pre&amp;gt;echo &#039;export PATH=&amp;quot;$PATH:/path/to/code&amp;quot;&#039; &amp;gt;&amp;gt; ~/.bashrc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In VSCode, install the&amp;amp;nbsp;&amp;lt;code&amp;gt;Remote - Tunnels&amp;lt;/code&amp;gt;&amp;amp;nbsp;extension, then use the VSCode SSH feature to connect to Wright and make sure to install all the local VS Code extensions on the remote machine as well (e.g., Python, Jupyter, ...)&lt;br /&gt;
&lt;br /&gt;
==== Running a session ====&lt;br /&gt;
*In the Wright headnode, launch a Slurm interactive session with &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt;, following the instructions above.&lt;br /&gt;
&lt;br /&gt;
*Inside the interactive session, run&amp;amp;nbsp;&amp;lt;code&amp;gt;code tunnel&amp;lt;/code&amp;gt;&amp;amp;nbsp;and follow the instructions. The first time the system will ask you to name the tunnel and authorize the process via an authenticator, I suggest using GitHub since it usually works quite smoothly. Subsequent tunnels might still ask you to authorize their creation by typing an alphanumerical sequence into a link that appears in the terminal. Once you’ve done that, the tunnel is successfully created.&lt;br /&gt;
*From VSCode, select&amp;amp;nbsp;&amp;lt;code&amp;gt;Connect to Tunnel&amp;lt;/code&amp;gt;, then choose the authentication method you previously used and you will see the tunnel appear in the dropdown. Select it and you will land directly into the interactive session we just created&lt;br /&gt;
*You will now be able to run code and, e.g., Jupyter Notebooks using the compute node allocated by the Slurm interactive session. VS Code will be disconnected when the Slurm session ends, such as when it reaches its time limit.&lt;br /&gt;
Note that if you need to use a conda environment, you&#039;ll have to configure VS Code to use the Python executable you found above, since conda is not installed on the compute nodes.&lt;br /&gt;
&lt;br /&gt;
=== SSH to Compute Nodes ===&lt;br /&gt;
The ability to SSH directly to compute nodes is disabled. You can run the command below to start a bash terminal on a compute node when running a batch job. This allows for the same functionality as SSH.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
srun --jobid=yourjobidhere --pty /bin/bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring cluster usage ==&lt;br /&gt;
The [https://util.stat.cmu.edu/grafana/d/Oxed_c6Wz/nvidia-wright-gpu-metrics NVIDIA Wright GPU Metrics Dashboard] shows graphs of GPU usage across the cluster. At the top left, you can select which node to graph, so viewing your department&#039;s node will let you see how GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re developing a long-running job, we recommend checking this dashboard while your job is running. It is easy to accidentally write PyTorch or Tensorflow code that &#039;&#039;&#039;doesn&#039;t actually use the GPU&#039;&#039;&#039;, so check the graphs to see if the expected number of GPUs are in used based on your job&#039;s requirements and the other jobs listed in &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. If they are not, get a terminal on the compute node as described above and run &amp;lt;code&amp;gt;nvidia-smi&amp;lt;/code&amp;gt; to get GPU usage information, including which scripts are accessing the GPU. If your script doesn&#039;t show up, you can debug it to figure out why no GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
== Using scratch storage ==&lt;br /&gt;
Each compute node (but not the head node) has several terabytes of scratch space. This is fast SSD storage that is directly attached to the node, rather than being accessed over the network (like all files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt; are). This is useful if your jobs need to write large temporary files: reading and writing the scratch space is faster than reading and writing files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Your home directory contains a symlink to the scratch space at &amp;lt;code&amp;gt;~/scratch&amp;lt;/code&amp;gt;. To use it, create a directory inside named after your username:&lt;br /&gt;
 mkdir ~/scratch/yourusername&lt;br /&gt;
Then you can read and write files in that directory.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Warnings:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* The scratch space is meant for &#039;&#039;&#039;temporary&#039;&#039;&#039; storage during a job. It may be cleared out during cluster maintenance or if the disk is full.&lt;br /&gt;
* The scratch drives are much smaller than the huge networked disk used for &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;, so be careful what you store in it, and regularly delete files you don&#039;t need.&lt;br /&gt;
* Each node has separate scratch disks, so data you write on one node is &#039;&#039;&#039;not&#039;&#039;&#039; available from any other node, or from the head node.&lt;br /&gt;
&lt;br /&gt;
The scratch space is thus not for final model outputs or results. It is ideal for things like saving checkpoints while your job is running, dumping data to debug a job, saving output from one script to be immediately used by another script, etc.&lt;br /&gt;
&lt;br /&gt;
== Citing Wright ==&lt;br /&gt;
If you use Wright in your research, please consider citing it with the text provided below...&amp;lt;syntaxhighlight lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;This research was supported through the computational resources and staff contributions to the Wright HPC GPU cluster at Carnegie Mellon&#039;s Dietrich College of Humanities and Social Sciences provisioned and supported by the Department of Statistics &amp;amp; Data Science, the Department of Philosophy, The Carnegie Mellon Institute for Strategy and Technology, and the Dietrich College Dean&#039;s Office.&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=980</id>
		<title>Wright GPU Cluster</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=980"/>
		<updated>2026-10-12T18:10:16Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
The department has access to a powerful GPU-based cluster named [[wikipedia:Sewall_Wright|Wright]]&amp;amp;nbsp;which is hosted here at CMU.&amp;amp;nbsp;This is a 4-node and growing cluster that is a shared resource for Statistics &amp;amp; Data Science, Philosophy, and other departments in Dietrich College. Each department has priority access to its own compute node, but will be able to share the resources from other departments when not in use.&lt;br /&gt;
&lt;br /&gt;
== Access requests ==&lt;br /&gt;
This resource&amp;amp;nbsp;is free to use to users in the Departments of Statistics &amp;amp; Data Science, Philosophy, and CMIST. These departments set policies determining which of their users are eligible.&amp;amp;nbsp;Users outside these departments must be sponsored by someone in the eligible departments, as part of a project or collaboration.&lt;br /&gt;
&lt;br /&gt;
To request access, complete the [https://docs.google.com/forms/d/e/1FAIpQLSftCsplE06whGocn62DhwC6NpDSgZ-DMmUacrQID_slIfg6sA/viewform access request form] and our team will be in touch to discuss your request and onboard you.&lt;br /&gt;
&lt;br /&gt;
== Cluster setup ==&lt;br /&gt;
The cluster currently consists of 4 servers:&lt;br /&gt;
*The head node: You log in to this to write code and run jobs. It has 128 GB of RAM, 16 cores, and &#039;&#039;&#039;no GPU&#039;&#039;&#039;.&lt;br /&gt;
*The compute nodes: Jobs run on these. Each has 256 CPU cores, 8 NVIDIA L40 GPU cards with 48 GB of video RAM each, approximately 1 TB of RAM, and a total of approximately 3 TB of local data/scratch space.&lt;br /&gt;
*The file server: Holds 50TB of storage. The head node and compute nodes connect via fiberoptic networking. Your home directory is hosted on the file server, so the same files are accessible on the head node and all compute nodes.&lt;br /&gt;
**Statistics &amp;amp; Data Science accounts are limited to 5TB of space. More can be requested if required.&lt;br /&gt;
The cluster is currently partitioned. One compute node is reserved for each department involved.&lt;br /&gt;
&lt;br /&gt;
The file server has quotas enabled so that each department gets 1/3rd of the available storage. If a department user tries to add files beyond the quota, the writes will be rejected, and nobody in that department will be able to add files until space is freed. To check the quotas and your own usage, [https://util.stat.cmu.edu/quotareport/ view the quota report].&lt;br /&gt;
&lt;br /&gt;
== Connecting and setting up your environment ==&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
From your terminal, type&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh &amp;lt;YourStatID&amp;gt;@wright.hss.cmu.edu&amp;lt;/code&amp;gt;&amp;amp;nbsp;. You can also avoid remembering this by adding the following snippet to your local&amp;amp;nbsp;&amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&lt;br /&gt;
&amp;lt;pre&amp;gt;Host wright&lt;br /&gt;
    Hostname wright.hss.cmu.edu&lt;br /&gt;
    User YourStatID&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then connect by simply typing&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh wright&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
This connects you to the &#039;&#039;&#039;head node.&#039;&#039;&#039; Here you can upload your data files, set up your scripts, and test things.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Do not run resource-intensive tasks directly on the head node&#039;&#039;&#039;. It doesn&#039;t have any GPUs, and it has fewer resources than the compute nodes. You can do quick tests to make sure your scripts are set up correctly, but submit all other jobs through Slurm.&lt;br /&gt;
&lt;br /&gt;
=== Uploading files ===&lt;br /&gt;
To upload scripts or data files, you can use &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt; from your local computer (Mac or Linux); on Windows, you can get the Tectia SSH graphical client [https://www.cmu.edu/computing/services/endpoint/software/access.html free through CMU].&lt;br /&gt;
&lt;br /&gt;
You can&amp;amp;nbsp;also connect through the [https://code.visualstudio.com/docs/remote/ssh Remote SSH feature of VS Code] if you like. This is useful to&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
*navigate the file system from a proper GUI and&amp;amp;nbsp; &lt;br /&gt;
*modify code/files/folder in place if you are not familiar with the command line &lt;br /&gt;
Files uploaded to your home directory will be accessible on the head node and all compute nodes, so they can be freely used in compute jobs.&lt;br /&gt;
&lt;br /&gt;
=== Using Conda ===&lt;br /&gt;
The head node has Anaconda installed for managing Python packages and system libraries; see [[Python virtual environments]] for information on how to use it (but note it&#039;s &#039;&#039;&#039;already installed&#039;&#039;&#039;, so you don&#039;t need to install it from scratch!).&lt;br /&gt;
&lt;br /&gt;
However, the compute nodes &#039;&#039;&#039;do not&#039;&#039;&#039; have conda, so your slurm jobs can&#039;t use &amp;lt;code&amp;gt;conda activate&amp;lt;/code&amp;gt; or other familiar commands. Instead, set up your environment on the head node, activate it, install the packages you need, and so on. Then run &amp;lt;code&amp;gt;which python&amp;lt;/code&amp;gt; to get the path to the Python executable in your environment. For instance:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ which python&lt;br /&gt;
/home/export/areinhar/.conda/envs/llm/bin/python&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This is the path you&#039;ll use in your scripts (see below).&lt;br /&gt;
&lt;br /&gt;
=== Open OnDemand ===&lt;br /&gt;
&lt;br /&gt;
Open OnDemand is a graphical interface where you can run jobs, interactive applications, and manage files. More information can be found [[Open OnDemand Wright|here]].&lt;br /&gt;
&lt;br /&gt;
== Job scheduling and prioritization ==&lt;br /&gt;
&lt;br /&gt;
The GPU cluster manages jobs via [[Slurm]].&amp;amp;nbsp;Slurm is a job management system that deals with job prioritization and the allocation of resources. On high-performance computers (e.g., PSC and our GPU cluster) Slurm helps allocate resources so multiple jobs can be run quickly.&amp;amp;nbsp;Users run programs by submitting scripts to the Slurm job scheduler, and the scheduler runs them when resources are available.&lt;br /&gt;
=== Queue status ===&lt;br /&gt;
&lt;br /&gt;
To check what jobs are running, use &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. The following options list more helpful information than the default (though you need a wide terminal to read it all):&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ squeue -O &amp;quot;JobID:7,UserName:10,Partition:12,TimeUsed:12,ReasonList,MinCPUS:9,MinMemory:12,tres-per-node,StartTime,EndTime&amp;quot;&lt;br /&gt;
JOBID  USER      PARTITION   TIME        NODELIST(REASON)    MIN_CPUS MIN_MEMORY  TRES_PER_NODE       START_TIME          END_TIME            &lt;br /&gt;
36229  ebensen   all         0:00        (DependencyNeverSati16       128G        N/A                 N/A                 N/A                 &lt;br /&gt;
36237  ajshen    all         12:35:57    n02                 2        64G         gres:gpu:1          2026-01-26T21:55:23 2026-01-28T21:55:23 &lt;br /&gt;
36152  msezgin   all         1-02:32:04  n03                 1        64G         gres:gpu:1          2026-01-26T07:59:16 2026-01-28T07:59:16 &lt;br /&gt;
36132  tsukiant  cmist_condo 1-11:00:02  n03                 16       8G          gres:gpu:1          2026-01-25T23:31:18 2026-01-27T23:31:18 &lt;br /&gt;
36100  tsukiant  cmist_condo 1-17:32:39  n03                 16       8G          gres:gpu:1          2026-01-25T16:58:41 2026-01-27T16:58:41 &lt;br /&gt;
36090  tsukiant  cmist_condo 1-18:22:51  n03                 16       8G          gres:gpu:1          2026-01-25T16:08:29 2026-01-27T16:08:29 &lt;br /&gt;
36247  jwalches  statds      42:38       n01                 40       15G         gres:gpu:3          2026-01-27T09:48:42 2026-01-29T09:48:42 &lt;br /&gt;
36051  xiangchs  statds_condo7:05:24     n01                 64       128G        gres:gpu:4          2026-01-27T03:25:56 2026-01-29T03:25:56 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here we see there are two jobs running on node 1, one on node 2, four on node 3, and one job that is not running because it was submitted with requirements that will not be met. The listed end times are based on the time limit specified when the job was submitted, so the jobs may end sooner. If you submit a job that is waiting for resources, the reason will be listed as &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt;, and after a few minutes Slurm will list a start time for your job based on when other jobs will finish and free up resources.&lt;br /&gt;
&lt;br /&gt;
To check what resources are currently in use, use &amp;lt;code&amp;gt;sinfo&amp;lt;/code&amp;gt;:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ sinfo -O &amp;quot;NodeList:10,CPUsState:16,Memory:9,FreeMem:10,Gres:20,GresUsed:30&amp;quot;&lt;br /&gt;
NODELIST  CPUS(A/I/O/T)   MEMORY   FREE_MEM  GRES                GRES_USED                     &lt;br /&gt;
n01       64/192/0/256    1000000  221943    gpu:nvidia-l40:8    gpu:nvidia-l40:8(IDX:0-7)     &lt;br /&gt;
n02       32/224/0/256    1000000  225575    gpu:nvidia-l40:8    gpu:nvidia-l40:0(IDX:N/A)                    &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This shows that node 1 (Statistics &amp;amp; Data Science) has 64 CPUs allocated and 192 idle, out of 256 total. There is 1TB of RAM, of which 222 GB is free. There are 8 NVIDIA L40 GPus, all 8 of which are in use. Hence if we submit a job to the statds partition requesting any GPUs, it will have to wait until some become free. Meanwhile, node 2 (Philosophy) has no GPUs in use.&lt;br /&gt;
&lt;br /&gt;
=== Partitions ===&lt;br /&gt;
The cluster is divided into three main partitions:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; (Statistics &amp;amp; Data Science)&lt;br /&gt;
* &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; (Philosophy)&lt;br /&gt;
* &amp;lt;code&amp;gt;cmist&amp;lt;/code&amp;gt; (CMIST)&lt;br /&gt;
&lt;br /&gt;
Jobs are submitted to a partition. &#039;&#039;&#039;The main partitions will only accept jobs from users in the corresponding department&#039;&#039;&#039; -- jobs submitted to the wrong partition will be rejected. Partitions correspond to nodes, so this ensures each department&#039;s jobs use their own node.  &lt;br /&gt;
&lt;br /&gt;
If you want to use other nodes, you can submit jobs to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. This requests any available node from any partition, so your job will run on whichever node has resources available. However, your job will have lower priority, as described below; if your all job runs on the philosophy node, a user who submits to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; can preempt your job, causing it to be killed to make room for them, then restarted after their job is done. See Job Etiquette below for when to use &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
If you want to use a specific node within &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; you can specify the node within your submit script as shown below.&amp;lt;syntaxhighlight lang=&amp;quot;batch&amp;quot;&amp;gt;&lt;br /&gt;
#SBATCH --nodelist=n03&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Job prioritization ===&lt;br /&gt;
Slurm runs jobs based on the resources they request and what is available. If resources aren&#039;t available for your job, slurm will put it in the queue and wait until other jobs finish. However, it&#039;s not simply a first-in first-out queue -- Slurm attempts to arrange the jobs so every job can run, even if that means running them out of order. Partitions have different quality-of-service (QOS) values that affect their prioritization, and Slurm also adjusts each user&#039;s priority based on how many jobs they submit, so that one user can&#039;t hog the cluster by submitting dozens of jobs; if one user has many jobs waiting, theirs will be reduced in priority so other users can run jobs as well.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 4 GPUs on the same partition. The compute node only has 8 GPUs, so Job B will be queued until Job A completes.&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 2 GPUs. Job B can run immediately.&lt;br /&gt;
* You submit a job that requires all 8 GPUs on a node, but 4 are currently in use. Your job is put in the queue and scheduled to run when Slurm knows the current jobs will finish (because of their maximum time limit). Meanwhile, someone submits a job using 2 GPUs and a short time limit. Slurm lets it run immediately, because it knows it will be done before your job is scheduled to run. Other jobs may be put off until after yours runs, so yours can get the 8 GPUs it needs.&lt;br /&gt;
* You submit 50 jobs that each require 1 GPU. The node has only 8 GPUs, but several are in use. Several of your jobs run, but the others are queued for later. The fair-sharing system assigns them a lower priority, because you have run so many jobs, and jobs submitted by other users will run first.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Someone else submits Job B to &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt;.  The &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition has lower QOS, so Job B will get to use the StatDS node first, and Job A will either wait or use a different node.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. It begins to run on the philosophy node. Someone else submits Job B to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt;, and there are insufficient resources to run both at the same time. Job A is killed, Job B runs, and Job A is placed back into the queue to be run when resources are available.&lt;br /&gt;
You can view the currently running or queued jobs by running &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt; on the head node, as described above. The &amp;lt;code&amp;gt;NODELIST(REASON)&amp;lt;/code&amp;gt; column will indicate which jobs are queued by giving special codes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; means there are not enough resources (CPUs, memory, or GPUs) available for the job. It will run once the resources are free.&lt;br /&gt;
* &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt; means resources are available, but Slurm wants to run a higher-priority job first. For example, maybe a large job has been waiting for resources for two days before you submit your job; Slurm may make your job wait so the large job can start first.&lt;br /&gt;
&lt;br /&gt;
=== Job etiquette ===&lt;br /&gt;
The cluster is shared between users and departments. Therefore:&lt;br /&gt;
&lt;br /&gt;
* Request the minimum resources required for your job, so other users can access other resources.&lt;br /&gt;
* For ordinary one-off jobs, use your department&#039;s partition so you get top priority for your node.&lt;br /&gt;
* If you need to submit a large number of jobs and aren&#039;t in a hurry, consider using the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Using &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; lets you get all available resources, but at lower priority, so other users can run jobs as well and you don&#039;t hog the cluster.&lt;br /&gt;
* Watch your disk space usage. With large deep models it is easy to use many terabytes of storage, and each department has a quota. [https://util.stat.cmu.edu/quotareport/ You can check the quota and your own usage here.]&lt;br /&gt;
&lt;br /&gt;
=== Job limits ===&lt;br /&gt;
There is no practical limit to the number of jobs you can have in the queue at a time (there is a maximum size limit for job arrays that can be checked via &amp;lt;code&amp;gt;scontrol show config | grep MaxArraySize&amp;lt;/code&amp;gt;. However, in order to prevent resource monopolization, &#039;&#039;&#039;no user can have more than 6 jobs running at once on the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&#039;&#039;&#039; If a user submits more than 6 jobs to the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition, the excess jobs will sit in the queue until one or more of the first 6 are completed. &#039;&#039;&#039;This limit does not apply to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition&#039;&#039;&#039;, so we encourage users with a large number of jobs to use the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition instead of the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&lt;br /&gt;
&lt;br /&gt;
== Setting up jobs ==&lt;br /&gt;
&lt;br /&gt;
=== Submitting batch jobs ===&lt;br /&gt;
The best way to run jobs is by writing a shell script specifying the Slurm options. To launch a batch job from a script you will need two files:&lt;br /&gt;
&lt;br /&gt;
*the actual script in your favorite programming language that does whatever computation you want&lt;br /&gt;
*a bash script that requests the resources you need from Slurm and gives the commands to launch your job.&lt;br /&gt;
A typical bash script might look like this:&amp;lt;pre&amp;gt;#!/bin/bash&lt;br /&gt;
# specify partition to run in (statds, phil, or cmist)&lt;br /&gt;
#SBATCH --partition statds&lt;br /&gt;
#SBATCH --ntasks 1&lt;br /&gt;
#SBATCH --job-name=nameofyourjob&lt;br /&gt;
&lt;br /&gt;
# number of CPUs you need:&lt;br /&gt;
#SBATCH --cpus-per-task 1&lt;br /&gt;
&lt;br /&gt;
# amount of memory per CPU&lt;br /&gt;
# (total allocated is CPUs * memory)&lt;br /&gt;
#SBATCH --mem-per-cpu 4G&lt;br /&gt;
&lt;br /&gt;
# number of GPUs you need&lt;br /&gt;
#SBATCH --gres=gpu:1&lt;br /&gt;
&lt;br /&gt;
# maximum time limit for job, HH:MM:SS (up to 48 hours max, 48:00:00)&lt;br /&gt;
#SBATCH --time=01:00:00&lt;br /&gt;
&lt;br /&gt;
# email you when job is finished or errors out:&lt;br /&gt;
#SBATCH --mail-user=YourAndrewID@andrew.cmu.edu&lt;br /&gt;
#SBATCH --mail-type=END,FAIL&lt;br /&gt;
&lt;br /&gt;
## Choose one:&lt;br /&gt;
&lt;br /&gt;
# to run a Python script in a Conda environment called ENV&lt;br /&gt;
srun /home/export/YOURANDREWID/.conda/envs/ENV/bin/python YourScript.py&lt;br /&gt;
&lt;br /&gt;
# to run an R script:&lt;br /&gt;
srun Rscript YourScript.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;Adjust the number of CPUs, number of GPUs, memory usage, and time limit based on the needs of your script. Requesting more than you need may result in your job having to wait for resources to free up; requesting a long time you don&#039;t need will block slurm from scheduling other jobs for when yours will be done. (And if you request more resources than exist on the compute nodes, your job will be queued forever while it waits for resources to appear.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;&amp;amp;nbsp;Slurm batch jobs are limited to a maximum duration of 48 hours. Jobs running longer will be killed.&lt;br /&gt;
&lt;br /&gt;
To run the job, SSH into the head node and navigate to the directory with your scripts. Then run:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sbatch example.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;where &amp;lt;code&amp;gt;example.sh&amp;lt;/code&amp;gt; is the name of your bash script.&lt;br /&gt;
&lt;br /&gt;
You will see a message like &amp;quot;Submitted batch job 1209&amp;quot; when your job is submitted. Any printed output from your script will automatically be redirected to a file based on the job number -- in this case, &amp;lt;code&amp;gt;slurm-1209.out&amp;lt;/code&amp;gt;. You can use &amp;lt;code&amp;gt;tail -f slurm-1209.out&amp;lt;/code&amp;gt; to view the output live and monitor your script&#039;s progress.&lt;br /&gt;
&lt;br /&gt;
=== Selecting the right resources ===&lt;br /&gt;
In the Slurm script above, you can choose the number of tasks, the number of GPUs, the memory per CPU, the number of GPUs, and the time limit. Choose these values wisely:&lt;br /&gt;
&lt;br /&gt;
* You generally want &#039;&#039;&#039;1 task&#039;&#039;&#039; (&amp;lt;code&amp;gt;--ntasks 1&amp;lt;/code&amp;gt;). Asking for multiple tasks will cause srun to run multiple copies of your script simultaneously. If you need to run the same script with 10 different parameter values, this can be useful: request 10 tasks, and read the &amp;lt;code&amp;gt;SLURM_PROCID&amp;lt;/code&amp;gt; environment variable in your script. It will be numbered 0-9 (for 10 tasks), so you can use this to set the parameter values for each parallel run.&lt;br /&gt;
* Set the number of CPUs based on your script. If your script is entirely single-threaded, ask for 1. If you use parallel processing (such as with multiprocessing in Python or the parallel package in R), use a multithreaded package, or spawn many parallel programs in your job, request more.&lt;br /&gt;
* Request the minimum amount of memory (RAM) needed for your script. This is per-CPU, so requesting a lot of CPUs and RAM can easily mean you request more RAM than exists on the node.&lt;br /&gt;
* Start with 1 GPU, adding more if your job requires more GPU memory (VRAM) than is on one GPU, or if you explicitly write your script to use more. If you do not use GPUs, request 0 so you aren&#039;t allocated a GPU that nobody else can use while your job runs.&lt;br /&gt;
* Set the time limit a little longer than you expect your script to run. Slurm uses the time limit when scheduling, so always choosing the maximum (48 hours) will backfire: Slurm will assume your job will take a long time and will run other things first. If you know your job can only take an hour, setting, say, a 01:30:00 time limit will let Slurm fit your job in before other long jobs in the queue. But of course if you choose too low and your job exceeds the limit, it will be killed, so leave yourself some extra time.&lt;br /&gt;
&lt;br /&gt;
=== Interactive mode ===&lt;br /&gt;
&lt;br /&gt;
You can also run interactive sessions that allow you to, say, run an R or Python console and type commands and immediately view the output. From the head node, run a command like:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# remember to edit to correct partition:&lt;br /&gt;
srun --partition statds --ntasks 1 \&lt;br /&gt;
    --cpus-per-task 16 --mem-per-cpu 4G \&lt;br /&gt;
    --gres=gpu:1 --time=01:00:00 --pty \&lt;br /&gt;
    bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This runs a job that opens a bash shell on the compute node, and connects you directly to this job. You can now run bash commands, open Python, or run R scripts. Note your interactive session has a time limit and will be killed when it elapses, so set the time limit carefully and choose the resource amounts in the command according to your needs.&lt;br /&gt;
&lt;br /&gt;
Interactive sessions are limited to &#039;&#039;&#039;two hours maximum&#039;&#039;&#039;. You cannot request a longer time limit. This is because interactive sessions are inefficient, with the cluster spending most of its time waiting for you to type something instead of running code. For large tasks, submit a batch job.&lt;br /&gt;
&lt;br /&gt;
=== Interactive via VS Code ===&lt;br /&gt;
VS Code supports SSH and tunneling, which allows it to connect to a server and run commands. This allows you to use the Jupyter Notebook support built into VS Code to interact with the GPU cluster. As this uses an interactive session, it&#039;s subject to the same &#039;&#039;&#039;two-hour time limit&#039;&#039;&#039;. Hence notebooks should be used only for exploration and debugging, not large jobs.&lt;br /&gt;
&lt;br /&gt;
To use this, we need to connect to the head node, run an interactive Slurm session, and then connect VS Code to that Slurm session so it can use it. This takes a few extra steps.&lt;br /&gt;
&lt;br /&gt;
==== Setup ====&lt;br /&gt;
Before you use this for the first time, do the following steps:&lt;br /&gt;
&lt;br /&gt;
*SSH into Wright and run the following to install and unpack the VSCode CLI:&amp;amp;nbsp; &lt;br /&gt;
&amp;lt;pre&amp;gt;curl -Lk &#039;https://code.visualstudio.com/sha/download?build=stable&amp;amp;os=cli-alpine-x64&#039; --output vscode_cli.tar.gz&lt;br /&gt;
tar -xf vscode_cli.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Add the&amp;amp;nbsp;&amp;lt;code&amp;gt;code&amp;lt;/code&amp;gt;&amp;amp;nbsp;executable to your PATH by adding the following to your&amp;amp;nbsp;&amp;lt;code&amp;gt;.bashrc&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&amp;amp;nbsp;&amp;lt;code&amp;gt;export&amp;amp;nbsp;PATH=&amp;quot;~:$PATH&amp;quot;&amp;lt;/code&amp;gt;&amp;lt;pre&amp;gt;echo &#039;export PATH=&amp;quot;$PATH:/path/to/code&amp;quot;&#039; &amp;gt;&amp;gt; ~/.bashrc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In VSCode, install the&amp;amp;nbsp;&amp;lt;code&amp;gt;Remote - Tunnels&amp;lt;/code&amp;gt;&amp;amp;nbsp;extension, then use the VSCode SSH feature to connect to Wright and make sure to install all the local VS Code extensions on the remote machine as well (e.g., Python, Jupyter, ...)&lt;br /&gt;
&lt;br /&gt;
==== Running a session ====&lt;br /&gt;
*In the Wright headnode, launch a Slurm interactive session with &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt;, following the instructions above.&lt;br /&gt;
&lt;br /&gt;
*Inside the interactive session, run&amp;amp;nbsp;&amp;lt;code&amp;gt;code tunnel&amp;lt;/code&amp;gt;&amp;amp;nbsp;and follow the instructions. The first time the system will ask you to name the tunnel and authorize the process via an authenticator, I suggest using GitHub since it usually works quite smoothly. Subsequent tunnels might still ask you to authorize their creation by typing an alphanumerical sequence into a link that appears in the terminal. Once you’ve done that, the tunnel is successfully created.&lt;br /&gt;
*From VSCode, select&amp;amp;nbsp;&amp;lt;code&amp;gt;Connect to Tunnel&amp;lt;/code&amp;gt;, then choose the authentication method you previously used and you will see the tunnel appear in the dropdown. Select it and you will land directly into the interactive session we just created&lt;br /&gt;
*You will now be able to run code and, e.g., Jupyter Notebooks using the compute node allocated by the Slurm interactive session. VS Code will be disconnected when the Slurm session ends, such as when it reaches its time limit.&lt;br /&gt;
Note that if you need to use a conda environment, you&#039;ll have to configure VS Code to use the Python executable you found above, since conda is not installed on the compute nodes.&lt;br /&gt;
&lt;br /&gt;
=== SSH to Compute Nodes ===&lt;br /&gt;
The ability to SSH directly to compute nodes is disabled. You can run the command below to start a bash terminal on a compute node when running a batch job. This allows for the same functionality as SSH.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
srun --jobid=yourjobidhere --pty /bin/bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring cluster usage ==&lt;br /&gt;
The [https://util.stat.cmu.edu/grafana/d/Oxed_c6Wz/nvidia-wright-gpu-metrics NVIDIA Wright GPU Metrics Dashboard] shows graphs of GPU usage across the cluster. At the top left, you can select which node to graph, so viewing your department&#039;s node will let you see how GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re developing a long-running job, we recommend checking this dashboard while your job is running. It is easy to accidentally write PyTorch or Tensorflow code that &#039;&#039;&#039;doesn&#039;t actually use the GPU&#039;&#039;&#039;, so check the graphs to see if the expected number of GPUs are in used based on your job&#039;s requirements and the other jobs listed in &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. If they are not, get a terminal on the compute node as described above and run &amp;lt;code&amp;gt;nvidia-smi&amp;lt;/code&amp;gt; to get GPU usage information, including which scripts are accessing the GPU. If your script doesn&#039;t show up, you can debug it to figure out why no GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
== Using scratch storage ==&lt;br /&gt;
Each compute node (but not the head node) has several terabytes of scratch space. This is fast SSD storage that is directly attached to the node, rather than being accessed over the network (like all files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt; are). This is useful if your jobs need to write large temporary files: reading and writing the scratch space is faster than reading and writing files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Your home directory contains a symlink to the scratch space at &amp;lt;code&amp;gt;~/scratch&amp;lt;/code&amp;gt;. To use it, create a directory inside named after your username:&lt;br /&gt;
 mkdir ~/scratch/yourusername&lt;br /&gt;
Then you can read and write files in that directory.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Warnings:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* The scratch space is meant for &#039;&#039;&#039;temporary&#039;&#039;&#039; storage during a job. It may be cleared out during cluster maintenance or if the disk is full.&lt;br /&gt;
* The scratch drives are much smaller than the huge networked disk used for &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;, so be careful what you store in it, and regularly delete files you don&#039;t need.&lt;br /&gt;
* Each node has separate scratch disks, so data you write on one node is &#039;&#039;&#039;not&#039;&#039;&#039; available from any other node, or from the head node.&lt;br /&gt;
&lt;br /&gt;
The scratch space is thus not for final model outputs or results. It is ideal for things like saving checkpoints while your job is running, dumping data to debug a job, saving output from one script to be immediately used by another script, etc.&lt;br /&gt;
&lt;br /&gt;
== Citing Wright ==&lt;br /&gt;
If you use Wright in your research, please consider citing it with the text provided below...&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=979</id>
		<title>Wright GPU Cluster</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=979"/>
		<updated>2026-10-12T18:08:59Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
The department has access to a powerful GPU-based cluster named [[wikipedia:Sewall_Wright|Wright]]&amp;amp;nbsp;which is hosted here at CMU.&amp;amp;nbsp;This is a 4-node and growing cluster that is a shared resource for Statistics &amp;amp; Data Science, Philosophy, and other departments in Dietrich College. Each department has priority access to its own compute node, but will be able to share the resources from other departments when not in use.&lt;br /&gt;
&lt;br /&gt;
== Access requests ==&lt;br /&gt;
This resource&amp;amp;nbsp;is free to use to users in the Departments of Statistics &amp;amp; Data Science, Philosophy, and CMIST. These departments set policies determining which of their users are eligible.&amp;amp;nbsp;Users outside these departments must be sponsored by someone in the eligible departments, as part of a project or collaboration.&lt;br /&gt;
&lt;br /&gt;
To request access, complete the [https://docs.google.com/forms/d/e/1FAIpQLSftCsplE06whGocn62DhwC6NpDSgZ-DMmUacrQID_slIfg6sA/viewform access request form] and our team will be in touch to discuss your request and onboard you.&lt;br /&gt;
&lt;br /&gt;
== Cluster setup ==&lt;br /&gt;
The cluster currently consists of 4 servers:&lt;br /&gt;
*The head node: You log in to this to write code and run jobs. It has 128 GB of RAM, 16 cores, and &#039;&#039;&#039;no GPU&#039;&#039;&#039;.&lt;br /&gt;
*The compute nodes: Jobs run on these. Each has 256 CPU cores, 8 NVIDIA L40 GPU cards with 48 GB of video RAM each, approximately 1 TB of RAM, and a total of approximately 3 TB of local data/scratch space.&lt;br /&gt;
*The file server: Holds 50TB of storage. The head node and compute nodes connect via fiberoptic networking. Your home directory is hosted on the file server, so the same files are accessible on the head node and all compute nodes.&lt;br /&gt;
**Statistics &amp;amp; Data Science accounts are limited to 5TB of space. More can be requested if required.&lt;br /&gt;
The cluster is currently partitioned. One compute node is reserved for each department involved.&lt;br /&gt;
&lt;br /&gt;
The file server has quotas enabled so that each department gets 1/3rd of the available storage. If a department user tries to add files beyond the quota, the writes will be rejected, and nobody in that department will be able to add files until space is freed. To check the quotas and your own usage, [https://util.stat.cmu.edu/quotareport/ view the quota report].&lt;br /&gt;
&lt;br /&gt;
== Connecting and setting up your environment ==&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
From your terminal, type&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh &amp;lt;YourStatID&amp;gt;@wright.hss.cmu.edu&amp;lt;/code&amp;gt;&amp;amp;nbsp;. You can also avoid remembering this by adding the following snippet to your local&amp;amp;nbsp;&amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&lt;br /&gt;
&amp;lt;pre&amp;gt;Host wright&lt;br /&gt;
    Hostname wright.hss.cmu.edu&lt;br /&gt;
    User YourStatID&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then connect by simply typing&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh wright&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
This connects you to the &#039;&#039;&#039;head node.&#039;&#039;&#039; Here you can upload your data files, set up your scripts, and test things.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Do not run resource-intensive tasks directly on the head node&#039;&#039;&#039;. It doesn&#039;t have any GPUs, and it has fewer resources than the compute nodes. You can do quick tests to make sure your scripts are set up correctly, but submit all other jobs through Slurm.&lt;br /&gt;
&lt;br /&gt;
=== Uploading files ===&lt;br /&gt;
To upload scripts or data files, you can use &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt; from your local computer (Mac or Linux); on Windows, you can get the Tectia SSH graphical client [https://www.cmu.edu/computing/services/endpoint/software/access.html free through CMU].&lt;br /&gt;
&lt;br /&gt;
You can&amp;amp;nbsp;also connect through the [https://code.visualstudio.com/docs/remote/ssh Remote SSH feature of VS Code] if you like. This is useful to&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
*navigate the file system from a proper GUI and&amp;amp;nbsp; &lt;br /&gt;
*modify code/files/folder in place if you are not familiar with the command line &lt;br /&gt;
Files uploaded to your home directory will be accessible on the head node and all compute nodes, so they can be freely used in compute jobs.&lt;br /&gt;
&lt;br /&gt;
=== Using Conda ===&lt;br /&gt;
The head node has Anaconda installed for managing Python packages and system libraries; see [[Python virtual environments]] for information on how to use it (but note it&#039;s &#039;&#039;&#039;already installed&#039;&#039;&#039;, so you don&#039;t need to install it from scratch!).&lt;br /&gt;
&lt;br /&gt;
However, the compute nodes &#039;&#039;&#039;do not&#039;&#039;&#039; have conda, so your slurm jobs can&#039;t use &amp;lt;code&amp;gt;conda activate&amp;lt;/code&amp;gt; or other familiar commands. Instead, set up your environment on the head node, activate it, install the packages you need, and so on. Then run &amp;lt;code&amp;gt;which python&amp;lt;/code&amp;gt; to get the path to the Python executable in your environment. For instance:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ which python&lt;br /&gt;
/home/export/areinhar/.conda/envs/llm/bin/python&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This is the path you&#039;ll use in your scripts (see below).&lt;br /&gt;
&lt;br /&gt;
=== Open OnDemand ===&lt;br /&gt;
&lt;br /&gt;
Open OnDemand is a graphical interface where you can run jobs, interactive applications, and manage files. More information can be found [[Open OnDemand Wright|here]].&lt;br /&gt;
&lt;br /&gt;
== Job scheduling and prioritization ==&lt;br /&gt;
&lt;br /&gt;
The GPU cluster manages jobs via [[Slurm]].&amp;amp;nbsp;Slurm is a job management system that deals with job prioritization and the allocation of resources. On high-performance computers (e.g., PSC and our GPU cluster) Slurm helps allocate resources so multiple jobs can be run quickly.&amp;amp;nbsp;Users run programs by submitting scripts to the Slurm job scheduler, and the scheduler runs them when resources are available.&lt;br /&gt;
=== Queue status ===&lt;br /&gt;
&lt;br /&gt;
To check what jobs are running, use &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. The following options list more helpful information than the default (though you need a wide terminal to read it all):&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ squeue -O &amp;quot;JobID:7,UserName:10,Partition:12,TimeUsed:12,ReasonList,MinCPUS:9,MinMemory:12,tres-per-node,StartTime,EndTime&amp;quot;&lt;br /&gt;
JOBID  USER      PARTITION   TIME        NODELIST(REASON)    MIN_CPUS MIN_MEMORY  TRES_PER_NODE       START_TIME          END_TIME            &lt;br /&gt;
36229  ebensen   all         0:00        (DependencyNeverSati16       128G        N/A                 N/A                 N/A                 &lt;br /&gt;
36237  ajshen    all         12:35:57    n02                 2        64G         gres:gpu:1          2026-01-26T21:55:23 2026-01-28T21:55:23 &lt;br /&gt;
36152  msezgin   all         1-02:32:04  n03                 1        64G         gres:gpu:1          2026-01-26T07:59:16 2026-01-28T07:59:16 &lt;br /&gt;
36132  tsukiant  cmist_condo 1-11:00:02  n03                 16       8G          gres:gpu:1          2026-01-25T23:31:18 2026-01-27T23:31:18 &lt;br /&gt;
36100  tsukiant  cmist_condo 1-17:32:39  n03                 16       8G          gres:gpu:1          2026-01-25T16:58:41 2026-01-27T16:58:41 &lt;br /&gt;
36090  tsukiant  cmist_condo 1-18:22:51  n03                 16       8G          gres:gpu:1          2026-01-25T16:08:29 2026-01-27T16:08:29 &lt;br /&gt;
36247  jwalches  statds      42:38       n01                 40       15G         gres:gpu:3          2026-01-27T09:48:42 2026-01-29T09:48:42 &lt;br /&gt;
36051  xiangchs  statds_condo7:05:24     n01                 64       128G        gres:gpu:4          2026-01-27T03:25:56 2026-01-29T03:25:56 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here we see there are two jobs running on node 1, one on node 2, four on node 3, and one job that is not running because it was submitted with requirements that will not be met. The listed end times are based on the time limit specified when the job was submitted, so the jobs may end sooner. If you submit a job that is waiting for resources, the reason will be listed as &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt;, and after a few minutes Slurm will list a start time for your job based on when other jobs will finish and free up resources.&lt;br /&gt;
&lt;br /&gt;
To check what resources are currently in use, use &amp;lt;code&amp;gt;sinfo&amp;lt;/code&amp;gt;:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ sinfo -O &amp;quot;NodeList:10,CPUsState:16,Memory:9,FreeMem:10,Gres:20,GresUsed:30&amp;quot;&lt;br /&gt;
NODELIST  CPUS(A/I/O/T)   MEMORY   FREE_MEM  GRES                GRES_USED                     &lt;br /&gt;
n01       64/192/0/256    1000000  221943    gpu:nvidia-l40:8    gpu:nvidia-l40:8(IDX:0-7)     &lt;br /&gt;
n02       32/224/0/256    1000000  225575    gpu:nvidia-l40:8    gpu:nvidia-l40:0(IDX:N/A)                    &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This shows that node 1 (Statistics &amp;amp; Data Science) has 64 CPUs allocated and 192 idle, out of 256 total. There is 1TB of RAM, of which 222 GB is free. There are 8 NVIDIA L40 GPus, all 8 of which are in use. Hence if we submit a job to the statds partition requesting any GPUs, it will have to wait until some become free. Meanwhile, node 2 (Philosophy) has no GPUs in use.&lt;br /&gt;
&lt;br /&gt;
=== Partitions ===&lt;br /&gt;
The cluster is divided into three main partitions:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; (Statistics &amp;amp; Data Science)&lt;br /&gt;
* &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; (Philosophy)&lt;br /&gt;
* &amp;lt;code&amp;gt;cmist&amp;lt;/code&amp;gt; (CMIST)&lt;br /&gt;
&lt;br /&gt;
Jobs are submitted to a partition. &#039;&#039;&#039;The main partitions will only accept jobs from users in the corresponding department&#039;&#039;&#039; -- jobs submitted to the wrong partition will be rejected. Partitions correspond to nodes, so this ensures each department&#039;s jobs use their own node.  &lt;br /&gt;
&lt;br /&gt;
If you want to use other nodes, you can submit jobs to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. This requests any available node from any partition, so your job will run on whichever node has resources available. However, your job will have lower priority, as described below; if your all job runs on the philosophy node, a user who submits to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; can preempt your job, causing it to be killed to make room for them, then restarted after their job is done. See Job Etiquette below for when to use &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
If you want to use a specific node within &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; you can specify the node within your submit script as shown below.&amp;lt;syntaxhighlight lang=&amp;quot;batch&amp;quot;&amp;gt;&lt;br /&gt;
#SBATCH --nodelist=n03&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Job prioritization ===&lt;br /&gt;
Slurm runs jobs based on the resources they request and what is available. If resources aren&#039;t available for your job, slurm will put it in the queue and wait until other jobs finish. However, it&#039;s not simply a first-in first-out queue -- Slurm attempts to arrange the jobs so every job can run, even if that means running them out of order. Partitions have different quality-of-service (QOS) values that affect their prioritization, and Slurm also adjusts each user&#039;s priority based on how many jobs they submit, so that one user can&#039;t hog the cluster by submitting dozens of jobs; if one user has many jobs waiting, theirs will be reduced in priority so other users can run jobs as well.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 4 GPUs on the same partition. The compute node only has 8 GPUs, so Job B will be queued until Job A completes.&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 2 GPUs. Job B can run immediately.&lt;br /&gt;
* You submit a job that requires all 8 GPUs on a node, but 4 are currently in use. Your job is put in the queue and scheduled to run when Slurm knows the current jobs will finish (because of their maximum time limit). Meanwhile, someone submits a job using 2 GPUs and a short time limit. Slurm lets it run immediately, because it knows it will be done before your job is scheduled to run. Other jobs may be put off until after yours runs, so yours can get the 8 GPUs it needs.&lt;br /&gt;
* You submit 50 jobs that each require 1 GPU. The node has only 8 GPUs, but several are in use. Several of your jobs run, but the others are queued for later. The fair-sharing system assigns them a lower priority, because you have run so many jobs, and jobs submitted by other users will run first.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Someone else submits Job B to &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt;.  The &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition has lower QOS, so Job B will get to use the StatDS node first, and Job A will either wait or use a different node.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. It begins to run on the philosophy node. Someone else submits Job B to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt;, and there are insufficient resources to run both at the same time. Job A is killed, Job B runs, and Job A is placed back into the queue to be run when resources are available.&lt;br /&gt;
You can view the currently running or queued jobs by running &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt; on the head node, as described above. The &amp;lt;code&amp;gt;NODELIST(REASON)&amp;lt;/code&amp;gt; column will indicate which jobs are queued by giving special codes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; means there are not enough resources (CPUs, memory, or GPUs) available for the job. It will run once the resources are free.&lt;br /&gt;
* &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt; means resources are available, but Slurm wants to run a higher-priority job first. For example, maybe a large job has been waiting for resources for two days before you submit your job; Slurm may make your job wait so the large job can start first.&lt;br /&gt;
&lt;br /&gt;
=== Job etiquette ===&lt;br /&gt;
The cluster is shared between users and departments. Therefore:&lt;br /&gt;
&lt;br /&gt;
* Request the minimum resources required for your job, so other users can access other resources.&lt;br /&gt;
* For ordinary one-off jobs, use your department&#039;s partition so you get top priority for your node.&lt;br /&gt;
* If you need to submit a large number of jobs and aren&#039;t in a hurry, consider using the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Using &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; lets you get all available resources, but at lower priority, so other users can run jobs as well and you don&#039;t hog the cluster.&lt;br /&gt;
* Watch your disk space usage. With large deep models it is easy to use many terabytes of storage, and each department has a quota. [https://util.stat.cmu.edu/quotareport/ You can check the quota and your own usage here.]&lt;br /&gt;
&lt;br /&gt;
=== Job limits ===&lt;br /&gt;
There is no practical limit to the number of jobs you can have in the queue at a time (there is a maximum size limit for job arrays that can be checked via &amp;lt;code&amp;gt;scontrol show config | grep MaxArraySize&amp;lt;/code&amp;gt;. However, in order to prevent resource monopolization, &#039;&#039;&#039;no user can have more than 6 jobs running at once on the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&#039;&#039;&#039; If a user submits more than 6 jobs to the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition, the excess jobs will sit in the queue until one or more of the first 6 are completed. &#039;&#039;&#039;This limit does not apply to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition&#039;&#039;&#039;, so we encourage users with a large number of jobs to use the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition instead of the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&lt;br /&gt;
&lt;br /&gt;
== Setting up jobs ==&lt;br /&gt;
&lt;br /&gt;
=== Submitting batch jobs ===&lt;br /&gt;
The best way to run jobs is by writing a shell script specifying the Slurm options. To launch a batch job from a script you will need two files:&lt;br /&gt;
&lt;br /&gt;
*the actual script in your favorite programming language that does whatever computation you want&lt;br /&gt;
*a bash script that requests the resources you need from Slurm and gives the commands to launch your job.&lt;br /&gt;
A typical bash script might look like this:&amp;lt;pre&amp;gt;#!/bin/bash&lt;br /&gt;
# specify partition to run in (statds, phil, or cmist)&lt;br /&gt;
#SBATCH --partition statds&lt;br /&gt;
#SBATCH --ntasks 1&lt;br /&gt;
#SBATCH --job-name=nameofyourjob&lt;br /&gt;
&lt;br /&gt;
# number of CPUs you need:&lt;br /&gt;
#SBATCH --cpus-per-task 1&lt;br /&gt;
&lt;br /&gt;
# amount of memory per CPU&lt;br /&gt;
# (total allocated is CPUs * memory)&lt;br /&gt;
#SBATCH --mem-per-cpu 4G&lt;br /&gt;
&lt;br /&gt;
# number of GPUs you need&lt;br /&gt;
#SBATCH --gres=gpu:1&lt;br /&gt;
&lt;br /&gt;
# maximum time limit for job, HH:MM:SS (up to 48 hours max, 48:00:00)&lt;br /&gt;
#SBATCH --time=01:00:00&lt;br /&gt;
&lt;br /&gt;
# email you when job is finished or errors out:&lt;br /&gt;
#SBATCH --mail-user=YourAndrewID@andrew.cmu.edu&lt;br /&gt;
#SBATCH --mail-type=END,FAIL&lt;br /&gt;
&lt;br /&gt;
## Choose one:&lt;br /&gt;
&lt;br /&gt;
# to run a Python script in a Conda environment called ENV&lt;br /&gt;
srun /home/export/YOURANDREWID/.conda/envs/ENV/bin/python YourScript.py&lt;br /&gt;
&lt;br /&gt;
# to run an R script:&lt;br /&gt;
srun Rscript YourScript.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;Adjust the number of CPUs, number of GPUs, memory usage, and time limit based on the needs of your script. Requesting more than you need may result in your job having to wait for resources to free up; requesting a long time you don&#039;t need will block slurm from scheduling other jobs for when yours will be done. (And if you request more resources than exist on the compute nodes, your job will be queued forever while it waits for resources to appear.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;&amp;amp;nbsp;Slurm batch jobs are limited to a maximum duration of 48 hours. Jobs running longer will be killed.&lt;br /&gt;
&lt;br /&gt;
To run the job, SSH into the head node and navigate to the directory with your scripts. Then run:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sbatch example.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;where &amp;lt;code&amp;gt;example.sh&amp;lt;/code&amp;gt; is the name of your bash script.&lt;br /&gt;
&lt;br /&gt;
You will see a message like &amp;quot;Submitted batch job 1209&amp;quot; when your job is submitted. Any printed output from your script will automatically be redirected to a file based on the job number -- in this case, &amp;lt;code&amp;gt;slurm-1209.out&amp;lt;/code&amp;gt;. You can use &amp;lt;code&amp;gt;tail -f slurm-1209.out&amp;lt;/code&amp;gt; to view the output live and monitor your script&#039;s progress.&lt;br /&gt;
&lt;br /&gt;
=== Selecting the right resources ===&lt;br /&gt;
In the Slurm script above, you can choose the number of tasks, the number of GPUs, the memory per CPU, the number of GPUs, and the time limit. Choose these values wisely:&lt;br /&gt;
&lt;br /&gt;
* You generally want &#039;&#039;&#039;1 task&#039;&#039;&#039; (&amp;lt;code&amp;gt;--ntasks 1&amp;lt;/code&amp;gt;). Asking for multiple tasks will cause srun to run multiple copies of your script simultaneously. If you need to run the same script with 10 different parameter values, this can be useful: request 10 tasks, and read the &amp;lt;code&amp;gt;SLURM_PROCID&amp;lt;/code&amp;gt; environment variable in your script. It will be numbered 0-9 (for 10 tasks), so you can use this to set the parameter values for each parallel run.&lt;br /&gt;
* Set the number of CPUs based on your script. If your script is entirely single-threaded, ask for 1. If you use parallel processing (such as with multiprocessing in Python or the parallel package in R), use a multithreaded package, or spawn many parallel programs in your job, request more.&lt;br /&gt;
* Request the minimum amount of memory (RAM) needed for your script. This is per-CPU, so requesting a lot of CPUs and RAM can easily mean you request more RAM than exists on the node.&lt;br /&gt;
* Start with 1 GPU, adding more if your job requires more GPU memory (VRAM) than is on one GPU, or if you explicitly write your script to use more. If you do not use GPUs, request 0 so you aren&#039;t allocated a GPU that nobody else can use while your job runs.&lt;br /&gt;
* Set the time limit a little longer than you expect your script to run. Slurm uses the time limit when scheduling, so always choosing the maximum (48 hours) will backfire: Slurm will assume your job will take a long time and will run other things first. If you know your job can only take an hour, setting, say, a 01:30:00 time limit will let Slurm fit your job in before other long jobs in the queue. But of course if you choose too low and your job exceeds the limit, it will be killed, so leave yourself some extra time.&lt;br /&gt;
&lt;br /&gt;
=== Interactive mode ===&lt;br /&gt;
&lt;br /&gt;
You can also run interactive sessions that allow you to, say, run an R or Python console and type commands and immediately view the output. From the head node, run a command like:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# remember to edit to correct partition:&lt;br /&gt;
srun --partition statds --ntasks 1 \&lt;br /&gt;
    --cpus-per-task 16 --mem-per-cpu 4G \&lt;br /&gt;
    --gres=gpu:1 --time=01:00:00 --pty \&lt;br /&gt;
    bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This runs a job that opens a bash shell on the compute node, and connects you directly to this job. You can now run bash commands, open Python, or run R scripts. Note your interactive session has a time limit and will be killed when it elapses, so set the time limit carefully and choose the resource amounts in the command according to your needs.&lt;br /&gt;
&lt;br /&gt;
Interactive sessions are limited to &#039;&#039;&#039;two hours maximum&#039;&#039;&#039;. You cannot request a longer time limit. This is because interactive sessions are inefficient, with the cluster spending most of its time waiting for you to type something instead of running code. For large tasks, submit a batch job.&lt;br /&gt;
&lt;br /&gt;
=== Interactive via VS Code ===&lt;br /&gt;
VS Code supports SSH and tunneling, which allows it to connect to a server and run commands. This allows you to use the Jupyter Notebook support built into VS Code to interact with the GPU cluster. As this uses an interactive session, it&#039;s subject to the same &#039;&#039;&#039;two-hour time limit&#039;&#039;&#039;. Hence notebooks should be used only for exploration and debugging, not large jobs.&lt;br /&gt;
&lt;br /&gt;
To use this, we need to connect to the head node, run an interactive Slurm session, and then connect VS Code to that Slurm session so it can use it. This takes a few extra steps.&lt;br /&gt;
&lt;br /&gt;
==== Setup ====&lt;br /&gt;
Before you use this for the first time, do the following steps:&lt;br /&gt;
&lt;br /&gt;
*SSH into Wright and run the following to install and unpack the VSCode CLI:&amp;amp;nbsp; &lt;br /&gt;
&amp;lt;pre&amp;gt;curl -Lk &#039;https://code.visualstudio.com/sha/download?build=stable&amp;amp;os=cli-alpine-x64&#039; --output vscode_cli.tar.gz&lt;br /&gt;
tar -xf vscode_cli.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Add the&amp;amp;nbsp;&amp;lt;code&amp;gt;code&amp;lt;/code&amp;gt;&amp;amp;nbsp;executable to your PATH by adding the following to your&amp;amp;nbsp;&amp;lt;code&amp;gt;.bashrc&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&amp;amp;nbsp;&amp;lt;code&amp;gt;export&amp;amp;nbsp;PATH=&amp;quot;~:$PATH&amp;quot;&amp;lt;/code&amp;gt;&amp;lt;pre&amp;gt;echo &#039;export PATH=&amp;quot;$PATH:/path/to/code&amp;quot;&#039; &amp;gt;&amp;gt; ~/.bashrc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In VSCode, install the&amp;amp;nbsp;&amp;lt;code&amp;gt;Remote - Tunnels&amp;lt;/code&amp;gt;&amp;amp;nbsp;extension, then use the VSCode SSH feature to connect to Wright and make sure to install all the local VS Code extensions on the remote machine as well (e.g., Python, Jupyter, ...)&lt;br /&gt;
&lt;br /&gt;
==== Running a session ====&lt;br /&gt;
*In the Wright headnode, launch a Slurm interactive session with &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt;, following the instructions above.&lt;br /&gt;
&lt;br /&gt;
*Inside the interactive session, run&amp;amp;nbsp;&amp;lt;code&amp;gt;code tunnel&amp;lt;/code&amp;gt;&amp;amp;nbsp;and follow the instructions. The first time the system will ask you to name the tunnel and authorize the process via an authenticator, I suggest using GitHub since it usually works quite smoothly. Subsequent tunnels might still ask you to authorize their creation by typing an alphanumerical sequence into a link that appears in the terminal. Once you’ve done that, the tunnel is successfully created.&lt;br /&gt;
*From VSCode, select&amp;amp;nbsp;&amp;lt;code&amp;gt;Connect to Tunnel&amp;lt;/code&amp;gt;, then choose the authentication method you previously used and you will see the tunnel appear in the dropdown. Select it and you will land directly into the interactive session we just created&lt;br /&gt;
*You will now be able to run code and, e.g., Jupyter Notebooks using the compute node allocated by the Slurm interactive session. VS Code will be disconnected when the Slurm session ends, such as when it reaches its time limit.&lt;br /&gt;
Note that if you need to use a conda environment, you&#039;ll have to configure VS Code to use the Python executable you found above, since conda is not installed on the compute nodes.&lt;br /&gt;
&lt;br /&gt;
=== SSH to Compute Nodes ===&lt;br /&gt;
The ability to SSH directly to compute nodes is disabled. You can run the command below to start a bash terminal on a compute node when running a batch job. This allows for the same functionality as SSH.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
srun --jobid=yourjobidhere --pty /bin/bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring cluster usage ==&lt;br /&gt;
The [https://util.stat.cmu.edu/grafana/d/Oxed_c6Wz/nvidia-wright-gpu-metrics NVIDIA Wright GPU Metrics Dashboard] shows graphs of GPU usage across the cluster. At the top left, you can select which node to graph, so viewing your department&#039;s node will let you see how GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re developing a long-running job, we recommend checking this dashboard while your job is running. It is easy to accidentally write PyTorch or Tensorflow code that &#039;&#039;&#039;doesn&#039;t actually use the GPU&#039;&#039;&#039;, so check the graphs to see if the expected number of GPUs are in used based on your job&#039;s requirements and the other jobs listed in &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. If they are not, get a terminal on the compute node as described above and run &amp;lt;code&amp;gt;nvidia-smi&amp;lt;/code&amp;gt; to get GPU usage information, including which scripts are accessing the GPU. If your script doesn&#039;t show up, you can debug it to figure out why no GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
== Using scratch storage ==&lt;br /&gt;
Each compute node (but not the head node) has several terabytes of scratch space. This is fast SSD storage that is directly attached to the node, rather than being accessed over the network (like all files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt; are). This is useful if your jobs need to write large temporary files: reading and writing the scratch space is faster than reading and writing files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Your home directory contains a symlink to the scratch space at &amp;lt;code&amp;gt;~/scratch&amp;lt;/code&amp;gt;. To use it, create a directory inside named after your username:&lt;br /&gt;
 mkdir ~/scratch/yourusername&lt;br /&gt;
Then you can read and write files in that directory.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Warnings:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* The scratch space is meant for &#039;&#039;&#039;temporary&#039;&#039;&#039; storage during a job. It may be cleared out during cluster maintenance or if the disk is full.&lt;br /&gt;
* The scratch drives are much smaller than the huge networked disk used for &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;, so be careful what you store in it, and regularly delete files you don&#039;t need.&lt;br /&gt;
* Each node has separate scratch disks, so data you write on one node is &#039;&#039;&#039;not&#039;&#039;&#039; available from any other node, or from the head node.&lt;br /&gt;
&lt;br /&gt;
The scratch space is thus not for final model outputs or results. It is ideal for things like saving checkpoints while your job is running, dumping data to debug a job, saving output from one script to be immediately used by another script, etc.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=978</id>
		<title>Wright GPU Cluster</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Wright_GPU_Cluster&amp;diff=978"/>
		<updated>2026-10-12T13:12:11Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Cluster setup */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[index.php?title=Category:Wright Cluster]]&lt;br /&gt;
&lt;br /&gt;
The department has access to a powerful GPU-based cluster named [https://en.wikipedia.org/wiki/Sewall_Wright Wright]&amp;amp;nbsp;which is hosted here at CMU.&amp;amp;nbsp;This is a 4-node and growing cluster that is a shared resource for Statistics &amp;amp; Data Science, Philosophy, and other departments in Dietrich College. Each department has priority access to its own compute node, but will be able to share the resources from other departments when not in use.&lt;br /&gt;
&lt;br /&gt;
== Access requests ==&lt;br /&gt;
This resource&amp;amp;nbsp;is free to use to users in the Departments of Statistics &amp;amp; Data Science, Philosophy, and CMIST. These departments set policies determining which of their users are eligible.&amp;amp;nbsp;Users outside these departments must be sponsored by someone in the eligible departments, as part of a project or collaboration.&lt;br /&gt;
&lt;br /&gt;
To request access, complete the [https://docs.google.com/forms/d/e/1FAIpQLSftCsplE06whGocn62DhwC6NpDSgZ-DMmUacrQID_slIfg6sA/viewform access request form] and our team will be in touch to discuss your request and onboard you.&lt;br /&gt;
&lt;br /&gt;
== Cluster setup ==&lt;br /&gt;
The cluster currently consists of 4 servers:&lt;br /&gt;
*The head node: You log in to this to write code and run jobs. It has 128 GB of RAM, 16 cores, and &#039;&#039;&#039;no GPU&#039;&#039;&#039;.&lt;br /&gt;
*The compute nodes: Jobs run on these. Each has 256 CPU cores, 8 NVIDIA L40 GPU cards with 48 GB of video RAM each, approximately 1 TB of RAM, and a total of approximately 3 TB of local data/scratch space.&lt;br /&gt;
*The file server: Holds 50TB of storage. The head node and compute nodes connect via fiberoptic networking. Your home directory is hosted on the file server, so the same files are accessible on the head node and all compute nodes.&lt;br /&gt;
**Statistics &amp;amp; Data Science accounts are limited to 5TB of space. More can be requested if required.&lt;br /&gt;
The cluster is currently partitioned. One compute node is reserved for each department involved.&lt;br /&gt;
&lt;br /&gt;
The file server has quotas enabled so that each department gets 1/3rd of the available storage. If a department user tries to add files beyond the quota, the writes will be rejected, and nobody in that department will be able to add files until space is freed. To check the quotas and your own usage, [https://util.stat.cmu.edu/quotareport/ view the quota report].&lt;br /&gt;
&lt;br /&gt;
== Connecting and setting up your environment ==&lt;br /&gt;
&lt;br /&gt;
=== SSH ===&lt;br /&gt;
&lt;br /&gt;
From your terminal, type&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh &amp;lt;YourStatID&amp;gt;@wright.hss.cmu.edu&amp;lt;/code&amp;gt;&amp;amp;nbsp;. You can also avoid remembering this by adding the following snippet to your local&amp;amp;nbsp;&amp;lt;code&amp;gt;~/.ssh/config&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&lt;br /&gt;
&amp;lt;pre&amp;gt;Host wright&lt;br /&gt;
    Hostname wright.hss.cmu.edu&lt;br /&gt;
    User YourStatID&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can then connect by simply typing&amp;amp;nbsp;&amp;lt;code&amp;gt;ssh wright&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
This connects you to the &#039;&#039;&#039;head node.&#039;&#039;&#039; Here you can upload your data files, set up your scripts, and test things.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Do not run resource-intensive tasks directly on the head node&#039;&#039;&#039;. It doesn&#039;t have any GPUs, and it has fewer resources than the compute nodes. You can do quick tests to make sure your scripts are set up correctly, but submit all other jobs through Slurm.&lt;br /&gt;
&lt;br /&gt;
=== Uploading files ===&lt;br /&gt;
To upload scripts or data files, you can use &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt; from your local computer (Mac or Linux); on Windows, you can get the Tectia SSH graphical client [https://www.cmu.edu/computing/services/endpoint/software/access.html free through CMU].&lt;br /&gt;
&lt;br /&gt;
You can&amp;amp;nbsp;also connect through the [https://code.visualstudio.com/docs/remote/ssh Remote SSH feature of VS Code] if you like. This is useful to&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
*navigate the file system from a proper GUI and&amp;amp;nbsp; &lt;br /&gt;
*modify code/files/folder in place if you are not familiar with the command line &lt;br /&gt;
Files uploaded to your home directory will be accessible on the head node and all compute nodes, so they can be freely used in compute jobs.&lt;br /&gt;
&lt;br /&gt;
=== Using Conda ===&lt;br /&gt;
The head node has Anaconda installed for managing Python packages and system libraries; see [[Python virtual environments]] for information on how to use it (but note it&#039;s &#039;&#039;&#039;already installed&#039;&#039;&#039;, so you don&#039;t need to install it from scratch!).&lt;br /&gt;
&lt;br /&gt;
However, the compute nodes &#039;&#039;&#039;do not&#039;&#039;&#039; have conda, so your slurm jobs can&#039;t use &amp;lt;code&amp;gt;conda activate&amp;lt;/code&amp;gt; or other familiar commands. Instead, set up your environment on the head node, activate it, install the packages you need, and so on. Then run &amp;lt;code&amp;gt;which python&amp;lt;/code&amp;gt; to get the path to the Python executable in your environment. For instance:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ which python&lt;br /&gt;
/home/export/areinhar/.conda/envs/llm/bin/python&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This is the path you&#039;ll use in your scripts (see below).&lt;br /&gt;
&lt;br /&gt;
=== Open OnDemand ===&lt;br /&gt;
&lt;br /&gt;
Open OnDemand is a graphical interface where you can run jobs, interactive applications, and manage files. More information can be found [[Open OnDemand Wright|here]].&lt;br /&gt;
&lt;br /&gt;
== Job scheduling and prioritization ==&lt;br /&gt;
&lt;br /&gt;
The GPU cluster manages jobs via [[Slurm]].&amp;amp;nbsp;Slurm is a job management system that deals with job prioritization and the allocation of resources. On high-performance computers (e.g., PSC and our GPU cluster) Slurm helps allocate resources so multiple jobs can be run quickly.&amp;amp;nbsp;Users run programs by submitting scripts to the Slurm job scheduler, and the scheduler runs them when resources are available.&lt;br /&gt;
=== Queue status ===&lt;br /&gt;
&lt;br /&gt;
To check what jobs are running, use &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. The following options list more helpful information than the default (though you need a wide terminal to read it all):&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ squeue -O &amp;quot;JobID:7,UserName:10,Partition:12,TimeUsed:12,ReasonList,MinCPUS:9,MinMemory:12,tres-per-node,StartTime,EndTime&amp;quot;&lt;br /&gt;
JOBID  USER      PARTITION   TIME        NODELIST(REASON)    MIN_CPUS MIN_MEMORY  TRES_PER_NODE       START_TIME          END_TIME            &lt;br /&gt;
36229  ebensen   all         0:00        (DependencyNeverSati16       128G        N/A                 N/A                 N/A                 &lt;br /&gt;
36237  ajshen    all         12:35:57    n02                 2        64G         gres:gpu:1          2026-01-26T21:55:23 2026-01-28T21:55:23 &lt;br /&gt;
36152  msezgin   all         1-02:32:04  n03                 1        64G         gres:gpu:1          2026-01-26T07:59:16 2026-01-28T07:59:16 &lt;br /&gt;
36132  tsukiant  cmist_condo 1-11:00:02  n03                 16       8G          gres:gpu:1          2026-01-25T23:31:18 2026-01-27T23:31:18 &lt;br /&gt;
36100  tsukiant  cmist_condo 1-17:32:39  n03                 16       8G          gres:gpu:1          2026-01-25T16:58:41 2026-01-27T16:58:41 &lt;br /&gt;
36090  tsukiant  cmist_condo 1-18:22:51  n03                 16       8G          gres:gpu:1          2026-01-25T16:08:29 2026-01-27T16:08:29 &lt;br /&gt;
36247  jwalches  statds      42:38       n01                 40       15G         gres:gpu:3          2026-01-27T09:48:42 2026-01-29T09:48:42 &lt;br /&gt;
36051  xiangchs  statds_condo7:05:24     n01                 64       128G        gres:gpu:4          2026-01-27T03:25:56 2026-01-29T03:25:56 &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here we see there are two jobs running on node 1, one on node 2, four on node 3, and one job that is not running because it was submitted with requirements that will not be met. The listed end times are based on the time limit specified when the job was submitted, so the jobs may end sooner. If you submit a job that is waiting for resources, the reason will be listed as &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt;, and after a few minutes Slurm will list a start time for your job based on when other jobs will finish and free up resources.&lt;br /&gt;
&lt;br /&gt;
To check what resources are currently in use, use &amp;lt;code&amp;gt;sinfo&amp;lt;/code&amp;gt;:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
$ sinfo -O &amp;quot;NodeList:10,CPUsState:16,Memory:9,FreeMem:10,Gres:20,GresUsed:30&amp;quot;&lt;br /&gt;
NODELIST  CPUS(A/I/O/T)   MEMORY   FREE_MEM  GRES                GRES_USED                     &lt;br /&gt;
n01       64/192/0/256    1000000  221943    gpu:nvidia-l40:8    gpu:nvidia-l40:8(IDX:0-7)     &lt;br /&gt;
n02       32/224/0/256    1000000  225575    gpu:nvidia-l40:8    gpu:nvidia-l40:0(IDX:N/A)                    &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This shows that node 1 (Statistics &amp;amp; Data Science) has 64 CPUs allocated and 192 idle, out of 256 total. There is 1TB of RAM, of which 222 GB is free. There are 8 NVIDIA L40 GPus, all 8 of which are in use. Hence if we submit a job to the statds partition requesting any GPUs, it will have to wait until some become free. Meanwhile, node 2 (Philosophy) has no GPUs in use.&lt;br /&gt;
&lt;br /&gt;
=== Partitions ===&lt;br /&gt;
The cluster is divided into three main partitions:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; (Statistics &amp;amp; Data Science)&lt;br /&gt;
* &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; (Philosophy)&lt;br /&gt;
* &amp;lt;code&amp;gt;cmist&amp;lt;/code&amp;gt; (CMIST)&lt;br /&gt;
&lt;br /&gt;
Jobs are submitted to a partition. &#039;&#039;&#039;The main partitions will only accept jobs from users in the corresponding department&#039;&#039;&#039; -- jobs submitted to the wrong partition will be rejected. Partitions correspond to nodes, so this ensures each department&#039;s jobs use their own node.  &lt;br /&gt;
&lt;br /&gt;
If you want to use other nodes, you can submit jobs to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. This requests any available node from any partition, so your job will run on whichever node has resources available. However, your job will have lower priority, as described below; if your all job runs on the philosophy node, a user who submits to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt; can preempt your job, causing it to be killed to make room for them, then restarted after their job is done. See Job Etiquette below for when to use &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
If you want to use a specific node within &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; you can specify the node within your submit script as shown below.&amp;lt;syntaxhighlight lang=&amp;quot;batch&amp;quot;&amp;gt;&lt;br /&gt;
#SBATCH --nodelist=n03&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Job prioritization ===&lt;br /&gt;
Slurm runs jobs based on the resources they request and what is available. If resources aren&#039;t available for your job, slurm will put it in the queue and wait until other jobs finish. However, it&#039;s not simply a first-in first-out queue -- Slurm attempts to arrange the jobs so every job can run, even if that means running them out of order. Partitions have different quality-of-service (QOS) values that affect their prioritization, and Slurm also adjusts each user&#039;s priority based on how many jobs they submit, so that one user can&#039;t hog the cluster by submitting dozens of jobs; if one user has many jobs waiting, theirs will be reduced in priority so other users can run jobs as well.&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 4 GPUs on the same partition. The compute node only has 8 GPUs, so Job B will be queued until Job A completes.&lt;br /&gt;
* Someone submits Job A that requests 6 GPUs. Later, you submit Job B that requests 2 GPUs. Job B can run immediately.&lt;br /&gt;
* You submit a job that requires all 8 GPUs on a node, but 4 are currently in use. Your job is put in the queue and scheduled to run when Slurm knows the current jobs will finish (because of their maximum time limit). Meanwhile, someone submits a job using 2 GPUs and a short time limit. Slurm lets it run immediately, because it knows it will be done before your job is scheduled to run. Other jobs may be put off until after yours runs, so yours can get the 8 GPUs it needs.&lt;br /&gt;
* You submit 50 jobs that each require 1 GPU. The node has only 8 GPUs, but several are in use. Several of your jobs run, but the others are queued for later. The fair-sharing system assigns them a lower priority, because you have run so many jobs, and jobs submitted by other users will run first.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Someone else submits Job B to &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt;.  The &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition has lower QOS, so Job B will get to use the StatDS node first, and Job A will either wait or use a different node.&lt;br /&gt;
* You submit Job A to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. It begins to run on the philosophy node. Someone else submits Job B to &amp;lt;code&amp;gt;phil&amp;lt;/code&amp;gt;, and there are insufficient resources to run both at the same time. Job A is killed, Job B runs, and Job A is placed back into the queue to be run when resources are available.&lt;br /&gt;
You can view the currently running or queued jobs by running &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt; on the head node, as described above. The &amp;lt;code&amp;gt;NODELIST(REASON)&amp;lt;/code&amp;gt; column will indicate which jobs are queued by giving special codes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;(Resources)&amp;lt;/code&amp;gt; means there are not enough resources (CPUs, memory, or GPUs) available for the job. It will run once the resources are free.&lt;br /&gt;
* &amp;lt;code&amp;gt;(Priority)&amp;lt;/code&amp;gt; means resources are available, but Slurm wants to run a higher-priority job first. For example, maybe a large job has been waiting for resources for two days before you submit your job; Slurm may make your job wait so the large job can start first.&lt;br /&gt;
&lt;br /&gt;
=== Job etiquette ===&lt;br /&gt;
The cluster is shared between users and departments. Therefore:&lt;br /&gt;
&lt;br /&gt;
* Request the minimum resources required for your job, so other users can access other resources.&lt;br /&gt;
* For ordinary one-off jobs, use your department&#039;s partition so you get top priority for your node.&lt;br /&gt;
* If you need to submit a large number of jobs and aren&#039;t in a hurry, consider using the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition. Using &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; lets you get all available resources, but at lower priority, so other users can run jobs as well and you don&#039;t hog the cluster.&lt;br /&gt;
* Watch your disk space usage. With large deep models it is easy to use many terabytes of storage, and each department has a quota. [https://util.stat.cmu.edu/quotareport/ You can check the quota and your own usage here.]&lt;br /&gt;
&lt;br /&gt;
=== Job limits ===&lt;br /&gt;
There is no practical limit to the number of jobs you can have in the queue at a time (there is a maximum size limit for job arrays that can be checked via &amp;lt;code&amp;gt;scontrol show config | grep MaxArraySize&amp;lt;/code&amp;gt;. However, in order to prevent resource monopolization, &#039;&#039;&#039;no user can have more than 6 jobs running at once on the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&#039;&#039;&#039; If a user submits more than 6 jobs to the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition, the excess jobs will sit in the queue until one or more of the first 6 are completed. &#039;&#039;&#039;This limit does not apply to the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition&#039;&#039;&#039;, so we encourage users with a large number of jobs to use the &amp;lt;code&amp;gt;all&amp;lt;/code&amp;gt; partition instead of the &amp;lt;code&amp;gt;statds&amp;lt;/code&amp;gt; partition.&lt;br /&gt;
&lt;br /&gt;
== Setting up jobs ==&lt;br /&gt;
&lt;br /&gt;
=== Submitting batch jobs ===&lt;br /&gt;
The best way to run jobs is by writing a shell script specifying the Slurm options. To launch a batch job from a script you will need two files:&lt;br /&gt;
&lt;br /&gt;
*the actual script in your favorite programming language that does whatever computation you want&lt;br /&gt;
*a bash script that requests the resources you need from Slurm and gives the commands to launch your job.&lt;br /&gt;
A typical bash script might look like this:&amp;lt;pre&amp;gt;#!/bin/bash&lt;br /&gt;
# specify partition to run in (statds, phil, or cmist)&lt;br /&gt;
#SBATCH --partition statds&lt;br /&gt;
#SBATCH --ntasks 1&lt;br /&gt;
#SBATCH --job-name=nameofyourjob&lt;br /&gt;
&lt;br /&gt;
# number of CPUs you need:&lt;br /&gt;
#SBATCH --cpus-per-task 1&lt;br /&gt;
&lt;br /&gt;
# amount of memory per CPU&lt;br /&gt;
# (total allocated is CPUs * memory)&lt;br /&gt;
#SBATCH --mem-per-cpu 4G&lt;br /&gt;
&lt;br /&gt;
# number of GPUs you need&lt;br /&gt;
#SBATCH --gres=gpu:1&lt;br /&gt;
&lt;br /&gt;
# maximum time limit for job, HH:MM:SS (up to 48 hours max, 48:00:00)&lt;br /&gt;
#SBATCH --time=01:00:00&lt;br /&gt;
&lt;br /&gt;
# email you when job is finished or errors out:&lt;br /&gt;
#SBATCH --mail-user=YourAndrewID@andrew.cmu.edu&lt;br /&gt;
#SBATCH --mail-type=END,FAIL&lt;br /&gt;
&lt;br /&gt;
## Choose one:&lt;br /&gt;
&lt;br /&gt;
# to run a Python script in a Conda environment called ENV&lt;br /&gt;
srun /home/export/YOURANDREWID/.conda/envs/ENV/bin/python YourScript.py&lt;br /&gt;
&lt;br /&gt;
# to run an R script:&lt;br /&gt;
srun Rscript YourScript.R&lt;br /&gt;
&amp;lt;/pre&amp;gt;Adjust the number of CPUs, number of GPUs, memory usage, and time limit based on the needs of your script. Requesting more than you need may result in your job having to wait for resources to free up; requesting a long time you don&#039;t need will block slurm from scheduling other jobs for when yours will be done. (And if you request more resources than exist on the compute nodes, your job will be queued forever while it waits for resources to appear.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039;&amp;amp;nbsp;Slurm batch jobs are limited to a maximum duration of 48 hours. Jobs running longer will be killed.&lt;br /&gt;
&lt;br /&gt;
To run the job, SSH into the head node and navigate to the directory with your scripts. Then run:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
sbatch example.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;where &amp;lt;code&amp;gt;example.sh&amp;lt;/code&amp;gt; is the name of your bash script.&lt;br /&gt;
&lt;br /&gt;
You will see a message like &amp;quot;Submitted batch job 1209&amp;quot; when your job is submitted. Any printed output from your script will automatically be redirected to a file based on the job number -- in this case, &amp;lt;code&amp;gt;slurm-1209.out&amp;lt;/code&amp;gt;. You can use &amp;lt;code&amp;gt;tail -f slurm-1209.out&amp;lt;/code&amp;gt; to view the output live and monitor your script&#039;s progress.&lt;br /&gt;
&lt;br /&gt;
=== Selecting the right resources ===&lt;br /&gt;
In the Slurm script above, you can choose the number of tasks, the number of GPUs, the memory per CPU, the number of GPUs, and the time limit. Choose these values wisely:&lt;br /&gt;
&lt;br /&gt;
* You generally want &#039;&#039;&#039;1 task&#039;&#039;&#039; (&amp;lt;code&amp;gt;--ntasks 1&amp;lt;/code&amp;gt;). Asking for multiple tasks will cause srun to run multiple copies of your script simultaneously. If you need to run the same script with 10 different parameter values, this can be useful: request 10 tasks, and read the &amp;lt;code&amp;gt;SLURM_PROCID&amp;lt;/code&amp;gt; environment variable in your script. It will be numbered 0-9 (for 10 tasks), so you can use this to set the parameter values for each parallel run.&lt;br /&gt;
* Set the number of CPUs based on your script. If your script is entirely single-threaded, ask for 1. If you use parallel processing (such as with multiprocessing in Python or the parallel package in R), use a multithreaded package, or spawn many parallel programs in your job, request more.&lt;br /&gt;
* Request the minimum amount of memory (RAM) needed for your script. This is per-CPU, so requesting a lot of CPUs and RAM can easily mean you request more RAM than exists on the node.&lt;br /&gt;
* Start with 1 GPU, adding more if your job requires more GPU memory (VRAM) than is on one GPU, or if you explicitly write your script to use more. If you do not use GPUs, request 0 so you aren&#039;t allocated a GPU that nobody else can use while your job runs.&lt;br /&gt;
* Set the time limit a little longer than you expect your script to run. Slurm uses the time limit when scheduling, so always choosing the maximum (48 hours) will backfire: Slurm will assume your job will take a long time and will run other things first. If you know your job can only take an hour, setting, say, a 01:30:00 time limit will let Slurm fit your job in before other long jobs in the queue. But of course if you choose too low and your job exceeds the limit, it will be killed, so leave yourself some extra time.&lt;br /&gt;
&lt;br /&gt;
=== Interactive mode ===&lt;br /&gt;
&lt;br /&gt;
You can also run interactive sessions that allow you to, say, run an R or Python console and type commands and immediately view the output. From the head node, run a command like:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
# remember to edit to correct partition:&lt;br /&gt;
srun --partition statds --ntasks 1 \&lt;br /&gt;
    --cpus-per-task 16 --mem-per-cpu 4G \&lt;br /&gt;
    --gres=gpu:1 --time=01:00:00 --pty \&lt;br /&gt;
    bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;This runs a job that opens a bash shell on the compute node, and connects you directly to this job. You can now run bash commands, open Python, or run R scripts. Note your interactive session has a time limit and will be killed when it elapses, so set the time limit carefully and choose the resource amounts in the command according to your needs.&lt;br /&gt;
&lt;br /&gt;
Interactive sessions are limited to &#039;&#039;&#039;two hours maximum&#039;&#039;&#039;. You cannot request a longer time limit. This is because interactive sessions are inefficient, with the cluster spending most of its time waiting for you to type something instead of running code. For large tasks, submit a batch job.&lt;br /&gt;
&lt;br /&gt;
=== Interactive via VS Code ===&lt;br /&gt;
VS Code supports SSH and tunneling, which allows it to connect to a server and run commands. This allows you to use the Jupyter Notebook support built into VS Code to interact with the GPU cluster. As this uses an interactive session, it&#039;s subject to the same &#039;&#039;&#039;two-hour time limit&#039;&#039;&#039;. Hence notebooks should be used only for exploration and debugging, not large jobs.&lt;br /&gt;
&lt;br /&gt;
To use this, we need to connect to the head node, run an interactive Slurm session, and then connect VS Code to that Slurm session so it can use it. This takes a few extra steps.&lt;br /&gt;
&lt;br /&gt;
==== Setup ====&lt;br /&gt;
Before you use this for the first time, do the following steps:&lt;br /&gt;
&lt;br /&gt;
*SSH into Wright and run the following to install and unpack the VSCode CLI:&amp;amp;nbsp; &lt;br /&gt;
&amp;lt;pre&amp;gt;curl -Lk &#039;https://code.visualstudio.com/sha/download?build=stable&amp;amp;os=cli-alpine-x64&#039; --output vscode_cli.tar.gz&lt;br /&gt;
tar -xf vscode_cli.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
*Add the&amp;amp;nbsp;&amp;lt;code&amp;gt;code&amp;lt;/code&amp;gt;&amp;amp;nbsp;executable to your PATH by adding the following to your&amp;amp;nbsp;&amp;lt;code&amp;gt;.bashrc&amp;lt;/code&amp;gt;&amp;amp;nbsp;file:&amp;amp;nbsp;&amp;lt;code&amp;gt;export&amp;amp;nbsp;PATH=&amp;quot;~:$PATH&amp;quot;&amp;lt;/code&amp;gt;&amp;lt;pre&amp;gt;echo &#039;export PATH=&amp;quot;$PATH:/path/to/code&amp;quot;&#039; &amp;gt;&amp;gt; ~/.bashrc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*In VSCode, install the&amp;amp;nbsp;&amp;lt;code&amp;gt;Remote - Tunnels&amp;lt;/code&amp;gt;&amp;amp;nbsp;extension, then use the VSCode SSH feature to connect to Wright and make sure to install all the local VS Code extensions on the remote machine as well (e.g., Python, Jupyter, ...)&lt;br /&gt;
&lt;br /&gt;
==== Running a session ====&lt;br /&gt;
*In the Wright headnode, launch a Slurm interactive session with &amp;lt;code&amp;gt;srun&amp;lt;/code&amp;gt;, following the instructions above.&lt;br /&gt;
&lt;br /&gt;
*Inside the interactive session, run&amp;amp;nbsp;&amp;lt;code&amp;gt;code tunnel&amp;lt;/code&amp;gt;&amp;amp;nbsp;and follow the instructions. The first time the system will ask you to name the tunnel and authorize the process via an authenticator, I suggest using GitHub since it usually works quite smoothly. Subsequent tunnels might still ask you to authorize their creation by typing an alphanumerical sequence into a link that appears in the terminal. Once you’ve done that, the tunnel is successfully created.&lt;br /&gt;
*From VSCode, select&amp;amp;nbsp;&amp;lt;code&amp;gt;Connect to Tunnel&amp;lt;/code&amp;gt;, then choose the authentication method you previously used and you will see the tunnel appear in the dropdown. Select it and you will land directly into the interactive session we just created&lt;br /&gt;
*You will now be able to run code and, e.g., Jupyter Notebooks using the compute node allocated by the Slurm interactive session. VS Code will be disconnected when the Slurm session ends, such as when it reaches its time limit.&lt;br /&gt;
Note that if you need to use a conda environment, you&#039;ll have to configure VS Code to use the Python executable you found above, since conda is not installed on the compute nodes.&lt;br /&gt;
&lt;br /&gt;
=== SSH to Compute Nodes ===&lt;br /&gt;
The ability to SSH directly to compute nodes is disabled. You can run the command below to start a bash terminal on a compute node when running a batch job. This allows for the same functionality as SSH.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
srun --jobid=yourjobidhere --pty /bin/bash&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Monitoring cluster usage ==&lt;br /&gt;
The [https://util.stat.cmu.edu/grafana/d/Oxed_c6Wz/nvidia-wright-gpu-metrics NVIDIA Wright GPU Metrics Dashboard] shows graphs of GPU usage across the cluster. At the top left, you can select which node to graph, so viewing your department&#039;s node will let you see how GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
If you&#039;re developing a long-running job, we recommend checking this dashboard while your job is running. It is easy to accidentally write PyTorch or Tensorflow code that &#039;&#039;&#039;doesn&#039;t actually use the GPU&#039;&#039;&#039;, so check the graphs to see if the expected number of GPUs are in used based on your job&#039;s requirements and the other jobs listed in &amp;lt;code&amp;gt;squeue&amp;lt;/code&amp;gt;. If they are not, get a terminal on the compute node as described above and run &amp;lt;code&amp;gt;nvidia-smi&amp;lt;/code&amp;gt; to get GPU usage information, including which scripts are accessing the GPU. If your script doesn&#039;t show up, you can debug it to figure out why no GPUs are being used.&lt;br /&gt;
&lt;br /&gt;
== Using scratch storage ==&lt;br /&gt;
Each compute node (but not the head node) has several terabytes of scratch space. This is fast SSD storage that is directly attached to the node, rather than being accessed over the network (like all files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt; are). This is useful if your jobs need to write large temporary files: reading and writing the scratch space is faster than reading and writing files in &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Your home directory contains a symlink to the scratch space at &amp;lt;code&amp;gt;~/scratch&amp;lt;/code&amp;gt;. To use it, create a directory inside named after your username:&lt;br /&gt;
 mkdir ~/scratch/yourusername&lt;br /&gt;
Then you can read and write files in that directory.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Warnings:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* The scratch space is meant for &#039;&#039;&#039;temporary&#039;&#039;&#039; storage during a job. It may be cleared out during cluster maintenance or if the disk is full.&lt;br /&gt;
* The scratch drives are much smaller than the huge networked disk used for &amp;lt;code&amp;gt;/home&amp;lt;/code&amp;gt;, so be careful what you store in it, and regularly delete files you don&#039;t need.&lt;br /&gt;
* Each node has separate scratch disks, so data you write on one node is &#039;&#039;&#039;not&#039;&#039;&#039; available from any other node, or from the head node.&lt;br /&gt;
&lt;br /&gt;
The scratch space is thus not for final model outputs or results. It is ideal for things like saving checkpoints while your job is running, dumping data to debug a job, saving output from one script to be immediately used by another script, etc.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=CommentStreams:91d525b39f89ae7acf4eb6a1587f0ce1&amp;diff=976</id>
		<title>CommentStreams:91d525b39f89ae7acf4eb6a1587f0ce1</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=CommentStreams:91d525b39f89ae7acf4eb6a1587f0ce1&amp;diff=976"/>
		<updated>2026-09-16T18:16:40Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;hi{{DISPLAYTITLE:&lt;br /&gt;
test&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=940</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=940"/>
		<updated>2026-08-12T12:16:03Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=939</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=939"/>
		<updated>2026-08-12T12:15:55Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following: test &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=938</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=938"/>
		<updated>2026-08-11T19:25:43Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=937</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=937"/>
		<updated>2026-08-11T19:25:37Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following: test1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=936</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=936"/>
		<updated>2026-08-11T19:19:49Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=935</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=935"/>
		<updated>2026-08-11T19:19:40Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following: test&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=934</id>
		<title>Jupyter Notebooks</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=934"/>
		<updated>2026-08-11T19:10:49Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:IDEs]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
&lt;br /&gt;
Running Jupyter Notebooks is now possible with Open OnDemand. To run a Notebook, follow the steps below.&lt;br /&gt;
&lt;br /&gt;
1 - Log in to &#039;&#039;&#039;Open OnDemand.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* https://ood.stat.cmu.edu/&lt;br /&gt;
&lt;br /&gt;
2 - Click the &#039;&#039;&#039;Interactive Apps&#039;&#039;&#039; drop down menu and then select &#039;&#039;&#039;Jupyter Notebook.&#039;&#039;&#039;&lt;br /&gt;
[[File:OOD Jupyter Menu Bar.png|left|frameless|719x719px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3 - You will be taken to a new page where you can select options for the Notebook. Fill out the form as desired and then click the &#039;&#039;&#039;Launch&#039;&#039;&#039; button. Use [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana] to help determine what server to use. Select one with low resource usage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hours&#039;&#039;&#039; - The number of hours your Notebook will run.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039; - The server to run your Notebook on. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jupyter Notebook Path&#039;&#039;&#039; - The path the Notebook environment lives on. You can use the default path which has many statistics related Python packages preinstalled, or you can define your own Notebook environment. See below for details on how to set your own environment up.&lt;br /&gt;
&lt;br /&gt;
[[File:Jupyter Notebook Page.png|frameless|403x403px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4 - You will be taken to another new page where the Jupyter Notebook will load. Once it&#039;s ready, click &#039;&#039;&#039;Connect to Jupyter&#039;&#039;&#039; at the bottom. You will then be taken to a new tab with your Notebook session.&lt;br /&gt;
&lt;br /&gt;
[[File:NotebookSession.png|frameless|526x526px]]&lt;br /&gt;
&lt;br /&gt;
=== Custom Jupyter Notebook Environment ===&lt;br /&gt;
To build a custom Notebook environment, you can use a Python package manager such as Momba or Python&#039;s built in virtual environments. This example will cover Python virtual environments.&lt;br /&gt;
&lt;br /&gt;
# Declare the virtual Python environment.&lt;br /&gt;
#* &#039;&#039;python3 -m venv /path/to/your/jupyter_env&#039;&#039;&lt;br /&gt;
# Activate the virtual environment.&lt;br /&gt;
#*&#039;&#039;source /path/to/your/jupyter_env/bin/activate&#039;&#039;&lt;br /&gt;
# Install the Jupyter Notebook application to the new Python virtual environment.&lt;br /&gt;
#* &#039;&#039;pip install notebook&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To use your own Jupyter Environment, replace the default path above in step 3 for Jupyter Notebook Path.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=933</id>
		<title>Jupyter Notebooks</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=933"/>
		<updated>2026-08-11T19:10:41Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:IDEs]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
&lt;br /&gt;
Running Jupyter Notebooks is now possible with Open OnDemand. To run a Notebook, follow the steps below.&lt;br /&gt;
&lt;br /&gt;
1 - Log in to &#039;&#039;&#039;Open OnDemand.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* https://ood.stat.cmu.edu/&lt;br /&gt;
&lt;br /&gt;
2 - Click the &#039;&#039;&#039;Interactive Apps&#039;&#039;&#039; drop down menu and then select &#039;&#039;&#039;Jupyter Notebook.&#039;&#039;&#039;&lt;br /&gt;
[[File:OOD Jupyter Menu Bar.png|left|frameless|719x719px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3 - You will be taken to a new page where you can select options for the Notebook. Fill out the form as desired and then click the &#039;&#039;&#039;Launch&#039;&#039;&#039; button. Use [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana] to help determine what server to use. Select one with low resource usage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hours&#039;&#039;&#039; - The number of hours your Notebook will run.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039; - The server to run your Notebook on. test&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jupyter Notebook Path&#039;&#039;&#039; - The path the Notebook environment lives on. You can use the default path which has many statistics related Python packages preinstalled, or you can define your own Notebook environment. See below for details on how to set your own environment up.&lt;br /&gt;
&lt;br /&gt;
[[File:Jupyter Notebook Page.png|frameless|403x403px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4 - You will be taken to another new page where the Jupyter Notebook will load. Once it&#039;s ready, click &#039;&#039;&#039;Connect to Jupyter&#039;&#039;&#039; at the bottom. You will then be taken to a new tab with your Notebook session.&lt;br /&gt;
&lt;br /&gt;
[[File:NotebookSession.png|frameless|526x526px]]&lt;br /&gt;
&lt;br /&gt;
=== Custom Jupyter Notebook Environment ===&lt;br /&gt;
To build a custom Notebook environment, you can use a Python package manager such as Momba or Python&#039;s built in virtual environments. This example will cover Python virtual environments.&lt;br /&gt;
&lt;br /&gt;
# Declare the virtual Python environment.&lt;br /&gt;
#* &#039;&#039;python3 -m venv /path/to/your/jupyter_env&#039;&#039;&lt;br /&gt;
# Activate the virtual environment.&lt;br /&gt;
#*&#039;&#039;source /path/to/your/jupyter_env/bin/activate&#039;&#039;&lt;br /&gt;
# Install the Jupyter Notebook application to the new Python virtual environment.&lt;br /&gt;
#* &#039;&#039;pip install notebook&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To use your own Jupyter Environment, replace the default path above in step 3 for Jupyter Notebook Path.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=932</id>
		<title>Jupyter Notebooks</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=932"/>
		<updated>2026-08-11T19:10:33Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:IDEs]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
&lt;br /&gt;
Running Jupyter Notebooks is now possible with Open OnDemand. To run a Notebook, follow the steps below. test&lt;br /&gt;
&lt;br /&gt;
1 - Log in to &#039;&#039;&#039;Open OnDemand.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* https://ood.stat.cmu.edu/&lt;br /&gt;
&lt;br /&gt;
2 - Click the &#039;&#039;&#039;Interactive Apps&#039;&#039;&#039; drop down menu and then select &#039;&#039;&#039;Jupyter Notebook.&#039;&#039;&#039;&lt;br /&gt;
[[File:OOD Jupyter Menu Bar.png|left|frameless|719x719px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3 - You will be taken to a new page where you can select options for the Notebook. Fill out the form as desired and then click the &#039;&#039;&#039;Launch&#039;&#039;&#039; button. Use [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana] to help determine what server to use. Select one with low resource usage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hours&#039;&#039;&#039; - The number of hours your Notebook will run.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039; - The server to run your Notebook on. test&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jupyter Notebook Path&#039;&#039;&#039; - The path the Notebook environment lives on. You can use the default path which has many statistics related Python packages preinstalled, or you can define your own Notebook environment. See below for details on how to set your own environment up.&lt;br /&gt;
&lt;br /&gt;
[[File:Jupyter Notebook Page.png|frameless|403x403px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4 - You will be taken to another new page where the Jupyter Notebook will load. Once it&#039;s ready, click &#039;&#039;&#039;Connect to Jupyter&#039;&#039;&#039; at the bottom. You will then be taken to a new tab with your Notebook session.&lt;br /&gt;
&lt;br /&gt;
[[File:NotebookSession.png|frameless|526x526px]]&lt;br /&gt;
&lt;br /&gt;
=== Custom Jupyter Notebook Environment ===&lt;br /&gt;
To build a custom Notebook environment, you can use a Python package manager such as Momba or Python&#039;s built in virtual environments. This example will cover Python virtual environments.&lt;br /&gt;
&lt;br /&gt;
# Declare the virtual Python environment.&lt;br /&gt;
#* &#039;&#039;python3 -m venv /path/to/your/jupyter_env&#039;&#039;&lt;br /&gt;
# Activate the virtual environment.&lt;br /&gt;
#*&#039;&#039;source /path/to/your/jupyter_env/bin/activate&#039;&#039;&lt;br /&gt;
# Install the Jupyter Notebook application to the new Python virtual environment.&lt;br /&gt;
#* &#039;&#039;pip install notebook&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To use your own Jupyter Environment, replace the default path above in step 3 for Jupyter Notebook Path.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=931</id>
		<title>Jupyter Notebooks</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=931"/>
		<updated>2026-08-11T19:10:27Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:IDEs]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
&lt;br /&gt;
Running Jupyter Notebooks is now possible with Open OnDemand. To run a Notebook, follow the steps below. test&lt;br /&gt;
&lt;br /&gt;
1 - Log in to &#039;&#039;&#039;Open OnDemand.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* https://ood.stat.cmu.edu/&lt;br /&gt;
&lt;br /&gt;
2 - Click the &#039;&#039;&#039;Interactive Apps&#039;&#039;&#039; drop down menu and then select &#039;&#039;&#039;Jupyter Notebook.&#039;&#039;&#039;&lt;br /&gt;
[[File:OOD Jupyter Menu Bar.png|left|frameless|719x719px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3 - You will be taken to a new page where you can select options for the Notebook. Fill out the form as desired and then click the &#039;&#039;&#039;Launch&#039;&#039;&#039; button. Use [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana] to help determine what server to use. Select one with low resource usage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hours&#039;&#039;&#039; - The number of hours your Notebook will run.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039; - The server to run your Notebook on.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jupyter Notebook Path&#039;&#039;&#039; - The path the Notebook environment lives on. You can use the default path which has many statistics related Python packages preinstalled, or you can define your own Notebook environment. See below for details on how to set your own environment up.&lt;br /&gt;
&lt;br /&gt;
[[File:Jupyter Notebook Page.png|frameless|403x403px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4 - You will be taken to another new page where the Jupyter Notebook will load. Once it&#039;s ready, click &#039;&#039;&#039;Connect to Jupyter&#039;&#039;&#039; at the bottom. You will then be taken to a new tab with your Notebook session.&lt;br /&gt;
&lt;br /&gt;
[[File:NotebookSession.png|frameless|526x526px]]&lt;br /&gt;
&lt;br /&gt;
=== Custom Jupyter Notebook Environment ===&lt;br /&gt;
To build a custom Notebook environment, you can use a Python package manager such as Momba or Python&#039;s built in virtual environments. This example will cover Python virtual environments.&lt;br /&gt;
&lt;br /&gt;
# Declare the virtual Python environment.&lt;br /&gt;
#* &#039;&#039;python3 -m venv /path/to/your/jupyter_env&#039;&#039;&lt;br /&gt;
# Activate the virtual environment.&lt;br /&gt;
#*&#039;&#039;source /path/to/your/jupyter_env/bin/activate&#039;&#039;&lt;br /&gt;
# Install the Jupyter Notebook application to the new Python virtual environment.&lt;br /&gt;
#* &#039;&#039;pip install notebook&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To use your own Jupyter Environment, replace the default path above in step 3 for Jupyter Notebook Path.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=930</id>
		<title>Jupyter Notebooks</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=930"/>
		<updated>2026-08-11T18:56:28Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:IDEs]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
&lt;br /&gt;
Running Jupyter Notebooks is now possible with Open OnDemand. To run a Notebook, follow the steps below.&lt;br /&gt;
&lt;br /&gt;
1 - Log in to &#039;&#039;&#039;Open OnDemand.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* https://ood.stat.cmu.edu/&lt;br /&gt;
&lt;br /&gt;
2 - Click the &#039;&#039;&#039;Interactive Apps&#039;&#039;&#039; drop down menu and then select &#039;&#039;&#039;Jupyter Notebook.&#039;&#039;&#039;&lt;br /&gt;
[[File:OOD Jupyter Menu Bar.png|left|frameless|719x719px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3 - You will be taken to a new page where you can select options for the Notebook. Fill out the form as desired and then click the &#039;&#039;&#039;Launch&#039;&#039;&#039; button. Use [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana] to help determine what server to use. Select one with low resource usage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hours&#039;&#039;&#039; - The number of hours your Notebook will run.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039; - The server to run your Notebook on.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jupyter Notebook Path&#039;&#039;&#039; - The path the Notebook environment lives on. You can use the default path which has many statistics related Python packages preinstalled, or you can define your own Notebook environment. See below for details on how to set your own environment up.&lt;br /&gt;
&lt;br /&gt;
[[File:Jupyter Notebook Page.png|frameless|403x403px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4 - You will be taken to another new page where the Jupyter Notebook will load. Once it&#039;s ready, click &#039;&#039;&#039;Connect to Jupyter&#039;&#039;&#039; at the bottom. You will then be taken to a new tab with your Notebook session.&lt;br /&gt;
&lt;br /&gt;
[[File:NotebookSession.png|frameless|526x526px]]&lt;br /&gt;
&lt;br /&gt;
=== Custom Jupyter Notebook Environment ===&lt;br /&gt;
To build a custom Notebook environment, you can use a Python package manager such as Momba or Python&#039;s built in virtual environments. This example will cover Python virtual environments.&lt;br /&gt;
&lt;br /&gt;
# Declare the virtual Python environment.&lt;br /&gt;
#* &#039;&#039;python3 -m venv /path/to/your/jupyter_env&#039;&#039;&lt;br /&gt;
# Activate the virtual environment.&lt;br /&gt;
#*&#039;&#039;source /path/to/your/jupyter_env/bin/activate&#039;&#039;&lt;br /&gt;
# Install the Jupyter Notebook application to the new Python virtual environment.&lt;br /&gt;
#* &#039;&#039;pip install notebook&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To use your own Jupyter Environment, replace the default path above in step 3 for Jupyter Notebook Path.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=929</id>
		<title>Jupyter Notebooks</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=929"/>
		<updated>2026-08-11T18:56:05Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:IDEs]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
&lt;br /&gt;
Running Jupyter Notebooks is now possible with Open OnDemand. To run a Notebook, follow the steps below.&lt;br /&gt;
&lt;br /&gt;
1 - Log in to &#039;&#039;&#039;Open OnDemand. test&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* https://ood.stat.cmu.edu/&lt;br /&gt;
&lt;br /&gt;
2 - Click the &#039;&#039;&#039;Interactive Apps&#039;&#039;&#039; drop down menu and then select &#039;&#039;&#039;Jupyter Notebook.&#039;&#039;&#039;&lt;br /&gt;
[[File:OOD Jupyter Menu Bar.png|left|frameless|719x719px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3 - You will be taken to a new page where you can select options for the Notebook. Fill out the form as desired and then click the &#039;&#039;&#039;Launch&#039;&#039;&#039; button. Use [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana] to help determine what server to use. Select one with low resource usage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hours&#039;&#039;&#039; - The number of hours your Notebook will run.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039; - The server to run your Notebook on.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jupyter Notebook Path&#039;&#039;&#039; - The path the Notebook environment lives on. You can use the default path which has many statistics related Python packages preinstalled, or you can define your own Notebook environment. See below for details on how to set your own environment up.&lt;br /&gt;
&lt;br /&gt;
[[File:Jupyter Notebook Page.png|frameless|403x403px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4 - You will be taken to another new page where the Jupyter Notebook will load. Once it&#039;s ready, click &#039;&#039;&#039;Connect to Jupyter&#039;&#039;&#039; at the bottom. You will then be taken to a new tab with your Notebook session.&lt;br /&gt;
&lt;br /&gt;
[[File:NotebookSession.png|frameless|526x526px]]&lt;br /&gt;
&lt;br /&gt;
=== Custom Jupyter Notebook Environment ===&lt;br /&gt;
To build a custom Notebook environment, you can use a Python package manager such as Momba or Python&#039;s built in virtual environments. This example will cover Python virtual environments.&lt;br /&gt;
&lt;br /&gt;
# Declare the virtual Python environment.&lt;br /&gt;
#* &#039;&#039;python3 -m venv /path/to/your/jupyter_env&#039;&#039;&lt;br /&gt;
# Activate the virtual environment.&lt;br /&gt;
#*&#039;&#039;source /path/to/your/jupyter_env/bin/activate&#039;&#039;&lt;br /&gt;
# Install the Jupyter Notebook application to the new Python virtual environment.&lt;br /&gt;
#* &#039;&#039;pip install notebook&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To use your own Jupyter Environment, replace the default path above in step 3 for Jupyter Notebook Path.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=928</id>
		<title>Monitoring with Grafana</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=928"/>
		<updated>2026-08-11T18:55:36Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Wright Cluster]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
&lt;br /&gt;
Grafana is a web based application that collects and displays server usage statistics within dedicated dashboards.&lt;br /&gt;
&lt;br /&gt;
Each dashboard shows CPU usage, RAM usage, system load percentage, and currently logged in users.&lt;br /&gt;
&lt;br /&gt;
[[File:Grafana Dashboard.png|thumb|alt=|border|none|479x479px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use these dashboards to help decide which server to use for your work. Choose a server that has a low resource usage and few logged in users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click the links below to be taken to each dashboard. &lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Leviathans] &lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Hydras]&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;timezone=browser Ghidorahs]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=927</id>
		<title>Monitoring with Grafana</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=927"/>
		<updated>2026-08-11T18:55:29Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Wright Cluster]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
&lt;br /&gt;
Grafana is a web based application that collects and displays server usage statistics within dedicated dashboards.&lt;br /&gt;
&lt;br /&gt;
Each dashboard shows CPU usage, RAM usage, system load percentage, and currently logged in users.&lt;br /&gt;
&lt;br /&gt;
[[File:Grafana Dashboard.png|thumb|alt=|border|none|479x479px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use these dashboards to help decide which server to use for your work. Choose a server that has a low resource usage and few logged in users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click the links below to be taken to each dashboard. test&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Leviathans] &lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Hydras]&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;timezone=browser Ghidorahs]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=926</id>
		<title>Monitoring with Grafana</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=926"/>
		<updated>2026-08-11T18:41:23Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Wright Cluster]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
&lt;br /&gt;
Grafana is a web based application that collects and displays server usage statistics within dedicated dashboards.&lt;br /&gt;
&lt;br /&gt;
Each dashboard shows CPU usage, RAM usage, system load percentage, and currently logged in users.&lt;br /&gt;
&lt;br /&gt;
[[File:Grafana Dashboard.png|thumb|alt=|border|none|479x479px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use these dashboards to help decide which server to use for your work. Choose a server that has a low resource usage and few logged in users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click the links below to be taken to each dashboard.&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Leviathans] &lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Hydras]&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;timezone=browser Ghidorahs]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=925</id>
		<title>Monitoring with Grafana</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=925"/>
		<updated>2026-08-11T18:40:40Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Wright Cluster]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
&lt;br /&gt;
Grafana is a web based application that collects and displays server usage statistics within dedicated dashboards.&lt;br /&gt;
&lt;br /&gt;
Each dashboard shows CPU usage, RAM usage, system load percentage, and currently logged in users.&lt;br /&gt;
&lt;br /&gt;
[[File:Grafana Dashboard.png|thumb|alt=|border|none|479x479px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use these dashboards to help decide which server to use for your work. Choose a server that has a low resource usage and few logged in users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click the links below to be taken to each dashboard. test&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Leviathans] &lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Hydras]&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;timezone=browser Ghidorahs]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=924</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=924"/>
		<updated>2026-08-11T18:31:00Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=923</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Main_Page&amp;diff=923"/>
		<updated>2026-08-11T18:30:29Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Welcome to the CMU Department of Statistics and Data Science Computing Wiki! To get the most out of this resource, please note the following: test&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2e3e5; border: 5px solid #6c757d; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Purpose &amp;amp; Contribution&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The main purpose of this wiki is to familiarize readers with the computing resources provided by the department.&lt;br /&gt;
* &#039;&#039;&#039;Newcomers:&#039;&#039;&#039; Please read the [[Beginner&#039;s Guide to Computation in Statistical Research]] to familiarize yourself with statistical computing tools and best practices as you begin you research.&lt;br /&gt;
* &#039;&#039;&#039;Computational Researchers:&#039;&#039;&#039; See the [[Article Catalog]] for a full selection of topics and pages and the [[Directory of Computing Resources for Statistical Research]] for available computational resources. You can also use the search bar at the top of this page. For one-off questions, consider using the [https://util.stat.cmu.edu/statchat/ Support Chat]&lt;br /&gt;
* &#039;&#039;&#039;Contributors and Maintainers:&#039;&#039;&#039; Feel free to leave a comment on any page, or create your own pages. Please see [[Generic Wiki Information]] for more information.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Important Announcements ==&lt;br /&gt;
Before using any department computing resources, please see [[Research Computing Dos and Don&#039;ts]]&amp;lt;div style=&amp;quot;background-color: #fff8e6; border-left: 4px solid #ffc107; padding: 15px; margin-bottom: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-10] New Article:&#039;&#039;&#039; Introducing [[Globus]], a tool for sharing large files within and between institutions.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] PSA:&#039;&#039;&#039; If you use VS Code, look for &amp;quot;[https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-python-envs Python Environments]&amp;quot; in your extensions and &#039;&#039;&#039;uninstall it immediately&#039;&#039;&#039; due to environment conflicts.&lt;br /&gt;
* &#039;&#039;&#039;[2026-04-01] Updated Article:&#039;&#039;&#039; The [[Linux and department servers]] page has been updated with instructions on how to use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; to avoid disk I/O slowdowns. See [[Linux and department servers#Using /scratch]].&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Quick Start ==&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #005A9C; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Beginner&#039;s Guide to Computation in Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
The essential starting point for understanding how to scale your statistical workflows and choose the right tools for your research.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #28a745; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Directory of Computing Resources for Statistical Research]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive index of all available clusters, servers, and computing environments accessible to department members.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6f42c1; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Department Tools and Services]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Additional department tools, printing, web hosting, software licenses, and specialized computing services.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #eff07d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;[[Article Catalog]]&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
A comprehensive list of articles organized by topic&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Support Resources ==&lt;br /&gt;
For assistance with issues not covered in this wiki, please reach out to the following contacts:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;display: grid; grid-template-columns: repeat(auto-fit, minmax(500px, 1fr))&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #6c757d; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;General Tech Support&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
For general issues with department computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Email:&#039;&#039;&#039; [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Research Project Assistance (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance from Alex Shen, PhD Computing TA, for project-specific computing questions:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Office Hours:&#039;&#039;&#039; Mondays 2:00 PM - 3:00 PM @ FMS Interview Room 320&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Contact:&#039;&#039;&#039; [mailto:ajshen@andrew.cmu.edu ajshen@andrew.cmu.edu] or reach out directly via Slack.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #f8f9fa; border-left: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Onboarding &amp;amp; Troubleshooting (Graduate Students Only)&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Live assistance for setting up and troubleshooting computing resources:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Carl Skipper:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:skipper@andrew.cmu.edu skipper@andrew.cmu.edu]&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Jake Gordon:&#039;&#039;&#039; Office hours by appointment. Request via [mailto:jacobg2@andrew.cmu.edu jacobg2@andrew.cmu.edu]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suggestions Box and Todos ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #aff0ff; border: 4px solid #17a2b8; padding: 15px; margin-bottom: 10px;&amp;quot;&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Version Control -&amp;gt; Experiment Management&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Scaling -&amp;gt; Big Data Management -&amp;gt; Articles about file formats and compression&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Creation -&amp;gt; Writing Documentation&lt;br /&gt;
* &#039;&#039;&#039;[New Article]&#039;&#039;&#039; Beginner&#039;s Guide -&amp;gt; Software Development -&amp;gt; Package Repositories&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This section contains work in progress and future suggestions for the wiki. If you would like to leave a suggestions, you may:&lt;br /&gt;
* Directly contact the Computing TA&lt;br /&gt;
* Leave a comment on a specific wiki article with your suggestions&lt;br /&gt;
* Leave a comment on this page with your suggestions&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Directory_of_Computing_Resources_for_Statistical_Research&amp;diff=922</id>
		<title>Directory of Computing Resources for Statistical Research</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Directory_of_Computing_Resources_for_Statistical_Research&amp;diff=922"/>
		<updated>2026-08-10T13:17:24Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Other Resources */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&#039;&#039;&#039;Computing Resources&#039;&#039;&#039; are essential for modern statistical research and data science. The department, university, and national organizations provide several High-Performance Computing (HPC) clusters to scale up your workflows, run massive simulations, or train deep learning models. &lt;br /&gt;
&lt;br /&gt;
This page provides an overview of the computing clusters available to members of the department, detailing who manages them, hardware capabilities, and where to find setup instructions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #e2eef9; border-left: 5px solid #005A9C; padding: 15px; margin-bottom: 20px; margin-top: 15px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip: Choosing the Right Cluster&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Start local before scaling up. Use the department-managed clusters for prototyping, data preparation, and medium-scale CPU jobs. For massive parallelism or extensive GPU needs that exceed department limits, you should apply for time on external clusters like PSC Bridges-2.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Available Computing Clusters ==&lt;br /&gt;
&#039;&#039;&#039;Note: We are going to be decommissioning the old hydra servers. Please move your workflows to the leviathan servers!&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 100%; border-collapse: collapse; text-align: left; box-shadow: 0 2px 5px rgba(0,0,0,0.1);&amp;quot;&lt;br /&gt;
|- style=&amp;quot;background-color: #f8f9fa; border-bottom: 2px solid #dee2e6;&amp;quot;&lt;br /&gt;
! style=&amp;quot;padding: 12px; width: 10%;&amp;quot; | HPC Cluster Name&lt;br /&gt;
! style=&amp;quot;padding: 12px; width: 15%;&amp;quot; | Management&lt;br /&gt;
! style=&amp;quot;padding: 12px; width: 10%;&amp;quot; | Has GPUs?&lt;br /&gt;
! style=&amp;quot;padding: 12px; width: 8%;&amp;quot; | Sharing Policy&lt;br /&gt;
! style=&amp;quot;padding: 12px; width: 20%;&amp;quot; | How to access&lt;br /&gt;
! style=&amp;quot;padding: 12px; width: 37%;&amp;quot; | Setup &amp;amp; Documentation Articles&lt;br /&gt;
|- style=&amp;quot;border-bottom: 1px solid #dee2e6;&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding: 12px; font-weight: bold;&amp;quot; | Leviathans&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | Statistics Department&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | No&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | FCFS&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | Anytime direct ssh to server, e.g. &amp;lt;code&amp;gt;ssh [userid]@leviathan1.stat.cmu.edu&amp;lt;/code&amp;gt;&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | &lt;br /&gt;
&amp;lt;categorytree mode=&amp;quot;pages&amp;quot; depth=&amp;quot;1&amp;quot; hideroot=&amp;quot;on&amp;quot;&amp;gt;Department Servers&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
|- style=&amp;quot;border-bottom: 1px solid #dee2e6;&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding: 12px; font-weight: bold;&amp;quot; | Ghidorahs&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | Statistics Department&lt;br /&gt;
| style=&amp;quot;padding: 12px; color: #28a745; font-weight: bold;&amp;quot; | Yes&lt;br /&gt;
(3 nodes)&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | FCFS&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | Anytime direct ssh to server, e.g. &amp;lt;code&amp;gt;ssh [userid]@ghidorah1.stat.cmu.edu&amp;lt;/code&amp;gt; &lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | &lt;br /&gt;
&amp;lt;categorytree mode=&amp;quot;pages&amp;quot; depth=&amp;quot;1&amp;quot; hideroot=&amp;quot;on&amp;quot;&amp;gt;Department Servers&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
|- style=&amp;quot;border-bottom: 1px solid #dee2e6; background-color: #fdfdfd;&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding: 12px; font-weight: bold;&amp;quot; | Wright Cluster&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | Collaboration between several CMU departments&lt;br /&gt;
| style=&amp;quot;padding: 12px; color: #28a745; font-weight: bold;&amp;quot; | Yes&lt;br /&gt;
(3 nodes)&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | Slurm&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | See instructions [[Wright GPU Cluster|here]]&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | &lt;br /&gt;
&amp;lt;categorytree mode=&amp;quot;pages&amp;quot; depth=&amp;quot;1&amp;quot; hideroot=&amp;quot;on&amp;quot;&amp;gt;Wright Cluster&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
|- style=&amp;quot;border-bottom: 1px solid #dee2e6; background-color: #fdfdfd;&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding: 12px; font-weight: bold;&amp;quot; | PSC Clusters&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | External (Pittsburgh Supercomputing Center)&lt;br /&gt;
| style=&amp;quot;padding: 12px; color: #28a745; font-weight: bold;&amp;quot; | Yes&lt;br /&gt;
(Many nodes)&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | Slurm&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | See instructions [[PSC|here]]&lt;br /&gt;
| style=&amp;quot;padding: 12px;&amp;quot; | &lt;br /&gt;
&amp;lt;categorytree mode=&amp;quot;pages&amp;quot; depth=&amp;quot;1&amp;quot; hideroot=&amp;quot;on&amp;quot;&amp;gt;PSC&amp;lt;/categorytree&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background-color: #fff3cd; border-left: 5px solid #ffc107; padding: 15px; margin-top: 20px;&amp;quot;&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note on Accounts:&#039;&#039;&#039; Department-managed clusters usually require you to request access via the department IT staff or faculty sponsor. External resources like PSC require writing a brief research proposal and creating an ACCESS account.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Technical Specifications ==&lt;br /&gt;
&lt;br /&gt;
The following table summarizes the hardware specifications per node for each resource type:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width: 100%; text-align: left;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Cluster&lt;br /&gt;
! Number of Nodes&lt;br /&gt;
! CPUs per Node&lt;br /&gt;
! RAM per Node&lt;br /&gt;
! GPUs per Node&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Leviathans&#039;&#039;&#039;&lt;br /&gt;
| 11&lt;br /&gt;
| 16 cores (AMD Ryzen 9 9950x @ 5.7GHz)&lt;br /&gt;
| 128GB (Nodes 1-6)&amp;lt;br&amp;gt;196GB (Nodes 7-11)&lt;br /&gt;
| 0&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Ghidorahs&#039;&#039;&#039;&lt;br /&gt;
| 3&lt;br /&gt;
| 24 cores (Intel Core i9-13900KF: 8 P-cores, 16 E-cores)&lt;br /&gt;
| 64GB&lt;br /&gt;
| 1 (NVIDIA RTX 4090 24GB)&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Wright Cluster&#039;&#039;&#039;&lt;br /&gt;
| 3&lt;br /&gt;
| 64 cores&lt;br /&gt;
| 1TB&lt;br /&gt;
| 8 (NVIDIA L40 48GB)&lt;br /&gt;
| See [https://www.cmu.edu/dietrich/statistics-datascience/resources/docs/wright-gpu-cluster-policy.pdf Wright GPU Cluster Policy - CMU]&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;PSC Clusters&#039;&#039;&#039;&lt;br /&gt;
| &amp;gt;500&lt;br /&gt;
| Varies&lt;br /&gt;
| Varies&lt;br /&gt;
| Varies&lt;br /&gt;
| See [https://www.psc.edu/resources/bridges-2/ Bridges-2 Nodes]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
The servers within Statistics &amp;amp; Data Science offer a variety of software. Sudo access, also referred to as the ability to install software, on department servers is not allowed. If a software package you would like to use is not listed below, please contact remarks@stat.cmu.edu.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|Python&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Apptainer&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Quarto&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Gurobi &lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Rstudio-Server&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Matlab&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Julia&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Other Resources ==&lt;br /&gt;
* [[Open OnDemand]]&lt;br /&gt;
* [[Open OnDemand Wright]]&lt;br /&gt;
* [[Monitoring with Grafana]]&lt;br /&gt;
* [https://util.stat.cmu.edu/grafana/dashboards/f/efud3z15idnuoa/ Grafana Monitor]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=921</id>
		<title>Jupyter Notebooks</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Jupyter_Notebooks&amp;diff=921"/>
		<updated>2026-08-06T13:05:54Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:IDEs]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
&lt;br /&gt;
Running Jupyter Notebooks is now possible with Open OnDemand. To run a Notebook, follow the steps below.&lt;br /&gt;
&lt;br /&gt;
1 - Log in to &#039;&#039;&#039;Open OnDemand.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* https://ood.stat.cmu.edu/&lt;br /&gt;
&lt;br /&gt;
2 - Click the &#039;&#039;&#039;Interactive Apps&#039;&#039;&#039; drop down menu and then select &#039;&#039;&#039;Jupyter Notebook.&#039;&#039;&#039;&lt;br /&gt;
[[File:OOD Jupyter Menu Bar.png|left|frameless|719x719px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3 - You will be taken to a new page where you can select options for the Notebook. Fill out the form as desired and then click the &#039;&#039;&#039;Launch&#039;&#039;&#039; button. Use [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana] to help determine what server to use. Select one with low resource usage.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hours&#039;&#039;&#039; - The number of hours your Notebook will run.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Server&#039;&#039;&#039; - The server to run your Notebook on.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Jupyter Notebook Path&#039;&#039;&#039; - The path the Notebook environment lives on. You can use the default path which has many statistics related Python packages preinstalled, or you can define your own Notebook environment. See below for details on how to set your own environment up.&lt;br /&gt;
&lt;br /&gt;
[[File:Jupyter Notebook Page.png|frameless|403x403px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4 - You will be taken to another new page where the Jupyter Notebook will load. Once it&#039;s ready, click &#039;&#039;&#039;Connect to Jupyter&#039;&#039;&#039; at the bottom. You will then be taken to a new tab with your Notebook session.&lt;br /&gt;
&lt;br /&gt;
[[File:NotebookSession.png|frameless|526x526px]]&lt;br /&gt;
&lt;br /&gt;
=== Custom Jupyter Notebook Environment ===&lt;br /&gt;
To build a custom Notebook environment, you can use a Python package manager such as Momba or Python&#039;s built in virtual environments. This example will cover Python virtual environments.&lt;br /&gt;
&lt;br /&gt;
# Declare the virtual Python environment.&lt;br /&gt;
#* &#039;&#039;python3 -m venv /path/to/your/jupyter_env&#039;&#039;&lt;br /&gt;
# Activate the virtual environment.&lt;br /&gt;
#*&#039;&#039;source /path/to/your/jupyter_env/bin/activate&#039;&#039;&lt;br /&gt;
# Install the Jupyter Notebook application to the new Python virtual environment.&lt;br /&gt;
#* &#039;&#039;pip install notebook&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
To use your own Jupyter Environment, replace the default path above in step 3 for Jupyter Notebook Path.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Linux_and_department_servers&amp;diff=920</id>
		<title>Linux and department servers</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Linux_and_department_servers&amp;diff=920"/>
		<updated>2026-08-06T13:04:56Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Checking current usage */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Department Servers]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
&lt;br /&gt;
The department has two sets of servers, the Leviathans and the Hydras, that can help you run large analyses and gain a better understanding of common command line structure for more high scale computing. One can also view the department servers a bit more as a “sandbox” or “playground” as there are very few constraints and it’s okay to not run as polished code as you might on the [[PSC]] or [[Wright GPU Cluster]].&lt;br /&gt;
&lt;br /&gt;
[&#039;&#039;&#039;Request:&#039;&#039;&#039; All users - if you see comments that are outdated / less helpful than expected please contribute.]&lt;br /&gt;
&lt;br /&gt;
== What resources exist ==&lt;br /&gt;
&lt;br /&gt;
# The department provides 11 leviathan servers (named {&amp;lt;code&amp;gt;leviathan1&amp;lt;/code&amp;gt;, ..., &amp;lt;code&amp;gt;leviathan11&amp;lt;/code&amp;gt;}&amp;lt;code&amp;gt;.stat.cmu.edu&amp;lt;/code&amp;gt;).&lt;br /&gt;
# The department provides 3 Ghidorah GPU servers (named {&amp;lt;code&amp;gt;ghidorah1&amp;lt;/code&amp;gt;, ..., &amp;lt;code&amp;gt;ghidorah3&amp;lt;/code&amp;gt;}&amp;lt;code&amp;gt;.stat.cmu.edu&amp;lt;/code&amp;gt;).&lt;br /&gt;
# The Ghidorahs and Leviathans all share the same data file system. This allows you to upload a file to any of the servers and then have it on all of them.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[what_resources_when| What resources when]] for guides to help decide which resource you should be using.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Introduction to connecting to the server and useful Linux commands==&lt;br /&gt;
&lt;br /&gt;
The department servers all run Linux and require you to interact with them remotely. While you can use a traditional command line, modern IDEs like VS Code also allow for highly integrated graphical interaction.&lt;br /&gt;
&lt;br /&gt;
===Getting Access: (&amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;)===&lt;br /&gt;
&lt;br /&gt;
To get onto the server and execute code, you’ll need to access it through &amp;lt;code&amp;gt;ssh&amp;lt;/code&amp;gt;. Modern operating systems (including Mac, Linux, and Windows 10/11) have this tool built-in natively.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&#039;&#039;&#039;Mac / Linux:&#039;&#039;&#039; Open up a &amp;lt;code&amp;gt;Terminal&amp;lt;/code&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&#039;&#039;&#039;Windows:&#039;&#039;&#039; Open up &amp;lt;code&amp;gt;Windows PowerShell&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;Windows Terminal&amp;lt;/code&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In your terminal, type: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;ssh andrew_id@leviathan1.stat.cmu.edu&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will then be prompted to type in your password. (Note: as you type, no characters will appear on the screen for security reasons. Just type it and hit Enter). If you don’t know your password or have never accessed the server before, email [mailto:remarks@stat.cmu.edu remarks@stat.cmu.edu].&lt;br /&gt;
&lt;br /&gt;
If you’re accessing the servers frequently, we highly recommend setting up passwordless SSH (see below).&lt;br /&gt;
&lt;br /&gt;
=== Passwordless SSH ===&lt;br /&gt;
To connect to the server without typing in your password every time, you need to generate an SSH key pair. This creates a private key that stays securely on your laptop, and a public key that the servers use to recognize you.&lt;br /&gt;
&lt;br /&gt;
* Open up your terminal (Mac/Linux) or PowerShell (Windows).&lt;br /&gt;
* Check whether you already have a key pair by looking in your &amp;lt;code&amp;gt;.ssh&amp;lt;/code&amp;gt; folder (run &amp;lt;code&amp;gt;ls ~/.ssh&amp;lt;/code&amp;gt; on Mac/Linux, or &amp;lt;code&amp;gt;dir ~\.ssh&amp;lt;/code&amp;gt; on Windows). If you have files like &amp;lt;code&amp;gt;id_ed25519&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;id_rsa&amp;lt;/code&amp;gt;, you already have a key pair and can skip to the upload step.&lt;br /&gt;
* To generate a new key pair, we recommend the Ed25519 algorithm. Run:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;ssh-keygen -t ed25519&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Hit Enter to accept the default file location. When prompted for a passphrase, you can enter one for extra security or leave it empty for true passwordless login.&lt;br /&gt;
* Next, upload the public key to the remote server. Because the hydras and ghidorahs share a file system, you only need to do this once.&lt;br /&gt;
** &#039;&#039;&#039;For Mac/Linux:&#039;&#039;&#039; Use the built-in &amp;lt;code&amp;gt;ssh-copy-id&amp;lt;/code&amp;gt; command:&lt;br /&gt;
** &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;ssh-copy-id andrew_id@leviathan1.stat.cmu.edu&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
** &#039;&#039;&#039;For Windows:&#039;&#039;&#039; Windows OpenSSH does not natively include the &amp;lt;code&amp;gt;ssh-copy-id&amp;lt;/code&amp;gt; command. Instead, use this PowerShell one-liner to securely copy your key over:&lt;br /&gt;
** &amp;lt;syntaxhighlight lang=&amp;quot;powershell&amp;quot;&amp;gt;Get-Content &amp;quot;$env:USERPROFILE\.ssh\id_ed25519.pub&amp;quot; | ssh andrew_id@leviathan1.stat.cmu.edu &amp;quot;mkdir -p ~/.ssh &amp;amp;&amp;amp; cat &amp;gt;&amp;gt; ~/.ssh/authorized_keys&amp;quot;&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* To ensure the permissions of the &amp;lt;code&amp;gt;~/.ssh&amp;lt;/code&amp;gt; directory on the server are strictly enforced, log into the server normally and run:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
chmod 700 ~/.ssh&lt;br /&gt;
chmod 600 ~/.ssh/authorized_keys&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
You should now be able to SSH into the server without being prompted for a password.&lt;br /&gt;
&lt;br /&gt;
===File sharing (&amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt; + GUIs)===&lt;br /&gt;
&lt;br /&gt;
There are two primary ways to move files between your personal computer and the server: using the command line (&amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt;) or using a graphical interface (like VS Code or Cyberduck).&lt;br /&gt;
&lt;br /&gt;
====Command line &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
Because Windows now includes OpenSSH natively, the &amp;lt;code&amp;gt;scp&amp;lt;/code&amp;gt; (secure copy) command works exactly the same across Mac, Linux, and Windows PowerShell.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;Copy from server to your computer&lt;br /&gt;
  &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;scp andrew_id@leviathan1.stat.cmu.edu:/path/to/remote/file.txt /local/directory/&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
  To copy an entire folder, add the &amp;lt;code&amp;gt;-r&amp;lt;/code&amp;gt; (recursive) flag:&lt;br /&gt;
  &amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;scp -r andrew_id@leviathan1.stat.cmu.edu:/path/to/remote/folder/ /local/directory/&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
  &amp;lt;li&amp;gt;Copy from your computer to the server&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;scp /local/file.txt andrew_id@leviathan1.stat.cmu.edu:/remote/directory/&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====GUI “drag-and-drop” file sharing====&lt;br /&gt;
Many students prefer graphical user interfaces (GUIs) to transfer files instead of using the command line. These tools allow you to visually drag and drop files from your computer to the server (and vice-versa).&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Visual Studio Code (Recommended for all OS):&#039;&#039;&#039; If you use VS Code with the Remote-SSH extension (see &amp;quot;Text Editors&amp;quot; below), you can simply drag and drop files from your desktop directly into the VS Code file explorer pane. This is the easiest and most integrated method.&lt;br /&gt;
* &#039;&#039;&#039;Mac:&#039;&#039;&#039; [https://cyberduck.io/ Cyberduck] remains a solid dedicated tool.&lt;br /&gt;
* &#039;&#039;&#039;Windows:&#039;&#039;&#039; [https://winscp.net/eng/download.php WinSCP] is a popular dedicated GUI, though legacy SSH clients like PuTTY are no longer necessary for modern Windows file transfers.&lt;br /&gt;
&lt;br /&gt;
=== Basic CLI (Linux command line): &amp;lt;code&amp;gt;bash&amp;lt;/code&amp;gt;===&lt;br /&gt;
&lt;br /&gt;
Understanding the basic Linux command line is important to navigate when you are on the server. Below are some basic commands to move around the file system and manipulate files.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!command&lt;br /&gt;
!translation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;code&amp;gt;pwd&amp;lt;/code&amp;gt;&lt;br /&gt;
|print the current working directory&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;code&amp;gt;cd _dir_&amp;lt;/code&amp;gt;&lt;br /&gt;
| change directory&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;code&amp;gt;rm _file_&amp;lt;/code&amp;gt;&lt;br /&gt;
|remove / delete file&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
&amp;lt;code&amp;gt;mv _file_ _dir_&amp;lt;/code&amp;gt;&lt;br /&gt;
|move file (can change name)&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;code&amp;gt;cp _file_ _dir_&amp;lt;/code&amp;gt;&lt;br /&gt;
|copy file&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&amp;lt;code&amp;gt;ls _dir_&amp;lt;/code&amp;gt;&lt;br /&gt;
|list files in directory&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Use &amp;lt;code&amp;gt;man _command_&amp;lt;/code&amp;gt; to get a listing / manual of the command.&lt;br /&gt;
&lt;br /&gt;
Additional resources geared toward statistical computing can be found here: [http://www.jarrodmillman.com/rcsds/standard/bash.html UCB 2015 reproducible DS lecture notes].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;TODO: add information about &amp;lt;code&amp;gt;sed&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;chmod&amp;lt;/code&amp;gt;, and a link to bash files.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Text editors and IDEs==&lt;br /&gt;
&lt;br /&gt;
Historically, editing code on a server required using terminal-based text editors. While still useful for quick changes, modern tools allow you to use a full graphical IDE on your laptop that computes natively on the server.&lt;br /&gt;
&lt;br /&gt;
=== Visual Studio Code (Highly Recommended) ===&lt;br /&gt;
[https://code.visualstudio.com/ Visual Studio Code] (VS Code) is the industry standard for remote development. By using the Microsoft &#039;&#039;&#039;Remote - SSH&#039;&#039;&#039; extension, you can connect VS Code directly to the department servers. &lt;br /&gt;
&lt;br /&gt;
# Install VS Code on your personal machine.&lt;br /&gt;
# Go to the Extensions tab and install &#039;&#039;&#039;Remote - SSH&#039;&#039;&#039;.&lt;br /&gt;
# Click the remote indicator (the green arrows) in the bottom-left corner of VS Code, select &amp;quot;Connect to Host...&amp;quot;, and type &amp;lt;code&amp;gt;andrew_id@leviathan1.stat.cmu.edu&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Once connected, you can open server folders, edit scripts with full syntax highlighting, run interactive terminal sessions, and drag-and-drop files between your laptop and the server all from within the VS Code window.&lt;br /&gt;
&lt;br /&gt;
=== Terminal Editors ===&lt;br /&gt;
If you only need to make a quick tweak to a file while already logged into the terminal, you can use built-in editors:&lt;br /&gt;
* &amp;lt;code&amp;gt;nano _filename_&amp;lt;/code&amp;gt;: A very simple, beginner-friendly text editor. Use &amp;lt;code&amp;gt;Ctrl+O&amp;lt;/code&amp;gt; to save and &amp;lt;code&amp;gt;Ctrl+X&amp;lt;/code&amp;gt; to exit.&lt;br /&gt;
* &amp;lt;code&amp;gt;vim _filename_&amp;lt;/code&amp;gt;: A highly powerful but steep-learning-curve text editor. &lt;br /&gt;
&lt;br /&gt;
==Using the servers respectfully==&lt;br /&gt;
Because the servers are a shared department resource it is important to use them respectfully. There are many servers and multiple cores (CPUs) per server. To be respectful of other users:&lt;br /&gt;
&lt;br /&gt;
#&#039;&#039;&#039;Check the current usage&#039;&#039;&#039; of the server you&#039;re on before using it.&lt;br /&gt;
#Do not use &#039;&#039;&#039;all&#039;&#039;&#039; the cores on a server, and do not use &#039;&#039;&#039;all&#039;&#039;&#039; the servers at the same time, so others can get work done.&lt;br /&gt;
#If you have a long-running job, &#039;&#039;&#039;deprioritize it&#039;&#039;&#039; so others can run too.&lt;br /&gt;
#Use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; for jobs that require intense disk I/O operations&lt;br /&gt;
&lt;br /&gt;
Each of these is easy to check.&lt;br /&gt;
&lt;br /&gt;
=== Checking current usage===&lt;br /&gt;
To check which servers are currently being used and which are open, see the [https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana dashboard for the hydras] and [https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser for the Leviathans]. It lists them all and their current usage.&lt;br /&gt;
&lt;br /&gt;
When you&#039;re logged in to one node, you can use the &amp;lt;code&amp;gt;top&amp;lt;/code&amp;gt; command. &amp;lt;code&amp;gt;top&amp;lt;/code&amp;gt; displays the current usage of the server’s resources with a list of jobs run. It also tells you the percentage of the cores that are being used and the amount of RAM (memory) that is available. See [https://www.howtogeek.com/668986/how-to-use-the-linux-top-command-and-understand-its-output/ howtogeek] resources on how to interpret it all.&lt;br /&gt;
&lt;br /&gt;
===Limiting the cores you use===&lt;br /&gt;
We recommend that when using parallel processing, use fewer than the total number of cores on the server. Most parallel processing packages let you choose the number of cores to use; the hydras have 12, so pick something smaller.&lt;br /&gt;
&lt;br /&gt;
=== Deprioritize when possible===&lt;br /&gt;
&amp;lt;code&amp;gt;nice/renice&amp;lt;/code&amp;gt; allows you to lower the priority of your jobs, so the operating system lets other processes run first. See [https://www.howtogeek.com/411979/how-to-set-process-priorities-with-the-nice-and-renice-commands-in-linux/ howtogeek] resources on the basics. &amp;lt;code&amp;gt;nice&amp;lt;/code&amp;gt; sets the priority, and &amp;lt;code&amp;gt;renice&amp;lt;/code&amp;gt; updates your priority. On the department servers, everyone starts at the same priority, and you can only &#039;&#039;&#039;deprioritize&#039;&#039;&#039; your jobs -- you can&#039;t make them higher priority than everyone else.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;nice -20 Rscript some-big-script.R&lt;br /&gt;
renice -n 20 processid # get the process ID from top&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Using &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt;===&lt;br /&gt;
On department servers, your home directory (the default location you start in when you ssh) is not actually located on the physical server itself. Instead, every department server uses network attached storage (NAS), where everybody&#039;s home directly lives on a central storage server and the individual Leviathans and Ghidorahs connect to that storage server. This is the functionality that lets your files follow you no matter what node you log into.&lt;br /&gt;
&lt;br /&gt;
While computing processes on one server do not affect processes on other servers, every server shares the same NAS. Therefore, &#039;&#039;&#039;if a user is reading and writing a ton of data to their home directory, it will slow down reading and writing for everyone, even if you aren&#039;t on the same server as this user.&#039;&#039;&#039; Even if your job does not read or write much data, disk I/O slowdowns will affect common operations, such as ssh, importing packages, and uploading/downloading files.&lt;br /&gt;
&lt;br /&gt;
If you need to run a job that requires a ton of reading and writing data to disk, &#039;&#039;&#039;do not read/write using your home directory&#039;&#039;&#039;. Instead, use the &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; folder located on every server. This folder points to an SSD that is specific to that server. Not only will read and writes to &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; not affect users on other servers, but it will also be generally faster than using your home directory even if nobody else is online. &#039;&#039;&#039;If you plan to use&#039;&#039;&#039; &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt;&#039;&#039;&#039;, you should make a new folder inside of&#039;&#039;&#039; &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; &#039;&#039;&#039;first and put your data inside that folder. For example:&#039;&#039;&#039;&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
cd /scratch&lt;br /&gt;
mkdir my_data # Default permission allows only you to modify contents&lt;br /&gt;
cd my_data&lt;br /&gt;
# Do stuff in my_data&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;It is also very important to remember that &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; &#039;&#039;&#039;is specific to each Leviathan and Ghidorah and will not follow you between servers&#039;&#039;&#039;. Thus, you should not use &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; for long-term storage or for important data. In addition, space on &amp;lt;code&amp;gt;/scratch&amp;lt;/code&amp;gt; is limited, so be sure to clean up your data once you don&#039;t need it anymore.&lt;br /&gt;
==Running jobs==&lt;br /&gt;
&lt;br /&gt;
We have included thoughts about running jobs in two places.&lt;br /&gt;
&lt;br /&gt;
# The first looks at tools that allow you to keep running jobs on the server when you close the connection to the server (turn off your laptop, etc.). These tools are call [[terminal multiplexers]].&amp;amp;nbsp;&lt;br /&gt;
#The second set of tools focus on how to run your [[R_on_the_server|R analysis]] or [[Python_on_the_server|Python analysis]] code on the server.&lt;br /&gt;
&lt;br /&gt;
==Server specs==&lt;br /&gt;
&lt;br /&gt;
Generally speaking, our servers have multiple CPU cores, but no GPU cores. For deep learning tasks that need GPUs, consider using the [[GPU Cluster|GPU cluster]].&lt;br /&gt;
&lt;br /&gt;
To examine the specs yourself, use&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;cat /proc/meminfo&lt;br /&gt;
cat /proc/cpuinfo&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
to see some information.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=919</id>
		<title>Department Servers</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=919"/>
		<updated>2026-08-06T12:57:35Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Ghidorahs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Delete Me]]&lt;br /&gt;
&lt;br /&gt;
Delete Me: Integrated into Directory of Resources&lt;br /&gt;
&lt;br /&gt;
== Using the Servers ==&lt;br /&gt;
&lt;br /&gt;
Accessing the servers requires using an SSH compatible terminal. Applications such as &amp;quot;Command Prompt&amp;quot; on Windows or &amp;quot;Terminal&amp;quot; on MacOS can achieve this.&lt;br /&gt;
To SSH to a server, open either app listed previously and enter the SSH command shown below. Be sure to use your StatDS computing account.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ssh statdsusername@leviathan11.stat.cmu.edu&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;In the line above, replace &amp;quot;hydra1&amp;quot; with the server you want to connect to.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
Servers&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|hydra1&lt;br /&gt;
|ghidorah1&lt;br /&gt;
|leviathan1&lt;br /&gt;
|-&lt;br /&gt;
|hydra2&lt;br /&gt;
|ghidorah2&lt;br /&gt;
|leviathan2&lt;br /&gt;
|-&lt;br /&gt;
|hydra3&lt;br /&gt;
|ghidorah3&lt;br /&gt;
|leviathan3&lt;br /&gt;
|-&lt;br /&gt;
|hydra4&lt;br /&gt;
|&lt;br /&gt;
|leviathan4&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan5&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan6&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan7&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan8&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan9&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan10&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan11&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Hydras ==&lt;br /&gt;
The Hydras are virtual based serves hosted in the Campus Cloud. They offer slightly higher stability and are better for smaller computing jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* Intel Xeon CPU&lt;br /&gt;
** 12 cores @2.6Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Hydra1-4&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@hydra1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana Monitoring]&lt;br /&gt;
&lt;br /&gt;
== Ghidorahs ==&lt;br /&gt;
The Ghidorahs are physical servers located throughout Baker Hall. They are designed for lighter GPU jobs. &lt;br /&gt;
&lt;br /&gt;
Hardware Specifications &lt;br /&gt;
&lt;br /&gt;
* Core i9-13900KF CPU &lt;br /&gt;
** 8 performance cores @5.4Ghz &lt;br /&gt;
** 16 Efficiency cores @4.3Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* RTX 4090 24GB of video memory&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;timezone=browser Grafana Monitoring]&lt;br /&gt;
== Leviathans ==&lt;br /&gt;
The Leviathans are physical servers located throughout Baker Hall and the Cyert Data Center. They are designed for heavy CPU and RAM jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* AMD Ryzen 9 9950x&lt;br /&gt;
** 16 cores @5.7Ghz&lt;br /&gt;
* 128GB of RAM (Leviathan1-6)&lt;br /&gt;
* 196GB of RAM (Leviathan7-11)&lt;br /&gt;
* 4TB of local NVME storage&lt;br /&gt;
** Mounted at /scratch&lt;br /&gt;
** Data stored in this location will only be accessible on the original server.&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Leviathan1-11&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@leviathan1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
* You can use &amp;quot;levi&amp;quot; in place of &amp;quot;leviathan&amp;quot;&lt;br /&gt;
** &#039;&#039;ssh yourusername@levi1.stat.cmu.edu&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana Monitor]&lt;br /&gt;
&lt;br /&gt;
== Storage ==&lt;br /&gt;
Each server&#039;s &amp;quot;/home&amp;quot; directory located on the department&#039;s NAS. This means your files will be accessible on every server.&lt;br /&gt;
&lt;br /&gt;
The NAS is a total of 100TB. This space is shared and monitored for fair usage. If you store large amounts of data, you may be asked if it is all necessary.&lt;br /&gt;
To see available space on the NAS, run the command below in a terminal on the server.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
df -h | grep &amp;quot;/home&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;To see your total usage run the command below. &#039;&#039;It may take a few minutes to finish&#039;&#039;&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 du -sh ~&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/i55CRAlMk/synology-nas-details?orgId=1&amp;amp;from=now-3h&amp;amp;to=now&amp;amp;timezone=browser&amp;amp;var-interfacebits=8&amp;amp;var-JobName=crater&amp;amp;var-Device=crater.stat.cmu.edu:9116&amp;amp;var-InterfacePhysical=$__all&amp;amp;var-InterfaceVirtual=$__all&amp;amp;var-DiskName=$__all&amp;amp;var-DiskNameSSD=$__all&amp;amp;var-raidName=$__all&amp;amp;var-storageIODevice=$__all&amp;amp;var-spaceIODevice=$__all&amp;amp;var-hrStorageDescr=$__all&amp;amp;var-flashCacheDisk=$__all&amp;amp;var-hrMemoryDescr=$__all&amp;amp;var-SmartDev=$__all&amp;amp;var-services=$__all&amp;amp;refresh=5m Grafana Monitor]&lt;br /&gt;
== Software ==&lt;br /&gt;
The servers within Statistics &amp;amp; Data Science offer a variety of software. Sudo access, also referred to as the ability to install software, on department servers is not allowed. If a software package you would like to use is not listed below, please contact remarks@stat.cmu.edu.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|Python&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Apptainer&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Quarto&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Gurobi &lt;br /&gt;
|X&lt;br /&gt;
|x&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Rstudio-Server&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Matlab&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Julia&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=918</id>
		<title>Department Servers</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=918"/>
		<updated>2026-08-06T12:56:14Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Hydras */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Delete Me]]&lt;br /&gt;
&lt;br /&gt;
Delete Me: Integrated into Directory of Resources&lt;br /&gt;
&lt;br /&gt;
== Using the Servers ==&lt;br /&gt;
&lt;br /&gt;
Accessing the servers requires using an SSH compatible terminal. Applications such as &amp;quot;Command Prompt&amp;quot; on Windows or &amp;quot;Terminal&amp;quot; on MacOS can achieve this.&lt;br /&gt;
To SSH to a server, open either app listed previously and enter the SSH command shown below. Be sure to use your StatDS computing account.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ssh statdsusername@leviathan11.stat.cmu.edu&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;In the line above, replace &amp;quot;hydra1&amp;quot; with the server you want to connect to.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
Servers&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|hydra1&lt;br /&gt;
|ghidorah1&lt;br /&gt;
|leviathan1&lt;br /&gt;
|-&lt;br /&gt;
|hydra2&lt;br /&gt;
|ghidorah2&lt;br /&gt;
|leviathan2&lt;br /&gt;
|-&lt;br /&gt;
|hydra3&lt;br /&gt;
|ghidorah3&lt;br /&gt;
|leviathan3&lt;br /&gt;
|-&lt;br /&gt;
|hydra4&lt;br /&gt;
|&lt;br /&gt;
|leviathan4&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan5&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan6&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan7&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan8&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan9&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan10&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan11&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Hydras ==&lt;br /&gt;
The Hydras are virtual based serves hosted in the Campus Cloud. They offer slightly higher stability and are better for smaller computing jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* Intel Xeon CPU&lt;br /&gt;
** 12 cores @2.6Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Hydra1-4&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@hydra1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Grafana Monitoring]&lt;br /&gt;
&lt;br /&gt;
== Ghidorahs ==&lt;br /&gt;
The Ghidorahs are physical servers located throughout Baker Hall. They are designed for lighter GPU jobs. &lt;br /&gt;
&lt;br /&gt;
Hardware Specifications &lt;br /&gt;
&lt;br /&gt;
* Core i9-13900KF CPU &lt;br /&gt;
** 8 performance cores @5.4Ghz &lt;br /&gt;
** 16 Efficiency cores @4.3Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* RTX 4090 24GB of video memory&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1 Grafana Monitoring]&lt;br /&gt;
== Leviathans ==&lt;br /&gt;
The Leviathans are physical servers located throughout Baker Hall and the Cyert Data Center. They are designed for heavy CPU and RAM jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* AMD Ryzen 9 9950x&lt;br /&gt;
** 16 cores @5.7Ghz&lt;br /&gt;
* 128GB of RAM (Leviathan1-6)&lt;br /&gt;
* 196GB of RAM (Leviathan7-11)&lt;br /&gt;
* 4TB of local NVME storage&lt;br /&gt;
** Mounted at /scratch&lt;br /&gt;
** Data stored in this location will only be accessible on the original server.&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Leviathan1-11&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@leviathan1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
* You can use &amp;quot;levi&amp;quot; in place of &amp;quot;leviathan&amp;quot;&lt;br /&gt;
** &#039;&#039;ssh yourusername@levi1.stat.cmu.edu&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1 Grafana Monitor]&lt;br /&gt;
&lt;br /&gt;
== Storage ==&lt;br /&gt;
Each server&#039;s &amp;quot;/home&amp;quot; directory located on the department&#039;s NAS. This means your files will be accessible on every server.&lt;br /&gt;
&lt;br /&gt;
The NAS is a total of 100TB. This space is shared and monitored for fair usage. If you store large amounts of data, you may be asked if it is all necessary.&lt;br /&gt;
To see available space on the NAS, run the command below in a terminal on the server.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
df -h | grep &amp;quot;/home&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;To see your total usage run the command below. &#039;&#039;It may take a few minutes to finish&#039;&#039;&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 du -sh ~&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
The servers within Statistics &amp;amp; Data Science offer a variety of software. Sudo access, also referred to as the ability to install software, on department servers is not allowed. If a software package you would like to use is not listed below, please contact remarks@stat.cmu.edu.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|Python&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Apptainer&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Quarto&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Gurobi &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Rstudio-Server&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Matlab&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Julia&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=917</id>
		<title>Monitoring with Grafana</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Monitoring_with_Grafana&amp;diff=917"/>
		<updated>2026-08-06T12:55:00Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Wright Cluster]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
&lt;br /&gt;
Grafana is a web based application that collects and displays server usage statistics within dedicated dashboards.&lt;br /&gt;
&lt;br /&gt;
Each dashboard shows CPU usage, RAM usage, system load percentage, and currently logged in users.&lt;br /&gt;
&lt;br /&gt;
[[File:Grafana Dashboard.png|thumb|alt=|border|none|479x479px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Use these dashboards to help decide which server to use for your work. Choose a server that has a low resource usage and few logged in users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Click the links below to be taken to each dashboard.&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Leviathans] &lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1&amp;amp;from=now-6h&amp;amp;to=now&amp;amp;timezone=browser Hydras]&lt;br /&gt;
&lt;br /&gt;
[https://util.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;timezone=browser Ghidorahs]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Open_OnDemand&amp;diff=909</id>
		<title>Open OnDemand</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Open_OnDemand&amp;diff=909"/>
		<updated>2026-07-07T14:20:53Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Getting Started */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
[[Category:Wright Cluster]]&lt;br /&gt;
[[Category:Department Servers]]&lt;br /&gt;
[[Category:Remote Server Access]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand provides easy, remote web access to supercomputers and computing clusters, without the need for a command-line interface. Instead of accessing the hydra and ghidorah clusters via your terminal, Open OnDemand provides a user interface for accessing and modifying files and submitting jobs. No installation is required -- everything can be accessed within the browser.&lt;br /&gt;
&lt;br /&gt;
=== Getting Started ===&lt;br /&gt;
To access Open OnDemand, login [https://ood.stat.cmu.edu/ here] with your StatDS username and password. This is the same username and password you would use to access the clusters via ssh on your terminal.&lt;br /&gt;
&lt;br /&gt;
After logging in, you should be redirected to your file system. You can navigate through your directories just as you would on your desktop. A nice feature of Open OnDemand is you can automatically upload and download files from your desktop to the department&#039;s file system; the secure file transfer is done automatically in a user-friendly manner.&lt;br /&gt;
&lt;br /&gt;
=== Editing Files ===&lt;br /&gt;
To create a new file or directory, simply click &amp;quot;New File&amp;quot; or &amp;quot;New Directory&amp;quot; in the upper right hand corner of the screen.&lt;br /&gt;
&lt;br /&gt;
To edit existing files, navigate to the file in the file system. Click on the dropdown three vertical dots to the right of the file&#039;s name. An options list will appear that includes a &amp;quot;View&amp;quot; mode and an &amp;quot;Edit&amp;quot; mode. Clicking view will allow you to view the contents of the file without manipulating them. Edit will redirect you to another tab where you can directly edit the contents of the file. Click the &amp;quot;Save&amp;quot; button on the lefthand side of the screen to save edits; when this button is grayed out, it means there are no additional changes to save.&lt;br /&gt;
&lt;br /&gt;
=== Accessing the Clusters ===&lt;br /&gt;
To access the head node via the terminal, navigate to the &amp;quot;Clusters&amp;quot; drop down in the top left of the screen, and select &amp;quot;Statistics and Data Science Shell Access.&amp;quot; The shell allows you to access your files within a terminal on the head compute node. Do not run jobs within this terminal. Beneath the cluster selection, you can view the system status which tells you how many nodes, processors, and GPUs are currently available, as well as how many jobs are running and queued. This will help inform how long a job you&#039;ve created might take to run on the system/when it will begin running.&lt;br /&gt;
&lt;br /&gt;
=== Submitting and Tracking Jobs ===&lt;br /&gt;
&lt;br /&gt;
==== Default Template ====&lt;br /&gt;
To submit or compose a job, navigate to the &amp;quot;Jobs&amp;quot; drop down in the top left of the screen, and select &amp;quot;Job Composer.&amp;quot; This will take you to the job composer page, where you can select the &amp;quot;New Job&amp;quot; drop down. To start from the default template, just click &amp;quot;From Default Template&amp;quot; and in the right hand panel, scroll down to where the .sh script is shone and click &amp;quot;Open Editor&amp;quot; to edit the script itself. Once you are ready to submit the job, simply click the job in your list of potential jobs, and click submit. The job will show a status of &amp;quot;Queued,&amp;quot; &amp;quot;Running,&amp;quot; or &amp;quot;Completed&amp;quot; and you can view output files in the right hand panel once it has completed running.&lt;br /&gt;
&lt;br /&gt;
==== Hydra, Leviathan, and Ghidorah Templates ====&lt;br /&gt;
If you click &amp;quot;From Template,&amp;quot; you can choose to submit a job on the hydras, leviathans, or ghidorahs. Simply pick the template you want to use -- either Hydra Job for the hydras or Ghidorah Job for the ghidorahs -- and click &amp;quot;Create New Job.&amp;quot; You can then modify the submit.sh script as before to select &#039;&#039;which&#039;&#039; server you want to use as follows:&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
#SBATCH --partition Ghidorahs&lt;br /&gt;
&lt;br /&gt;
# #Select a specific Hydra node to run job on.&lt;br /&gt;
# #Un-comment the line below and replace ghidorahXX with the appropriate ghidorah server ~ ghidorah1-3.&lt;br /&gt;
# #SBATCH --nodelist=ghidorahx&lt;br /&gt;
&lt;br /&gt;
# #Output file for script.&lt;br /&gt;
#SBATCH --output=%j_output.txt&lt;br /&gt;
&lt;br /&gt;
# #Error file for script.&lt;br /&gt;
#SBATCH --error=%j_error.txt&lt;br /&gt;
&lt;br /&gt;
python3 examplepython.py&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;The &amp;lt;code&amp;gt;#SBATCH --nodelist=ghidorah1&amp;lt;/code&amp;gt; selects the 1st ghidorah to run the python script on. Change this to &amp;lt;code&amp;gt;#SBATCH --nodelist=hydra1&amp;lt;/code&amp;gt; for the hydras and change the first SBATCH line to Hydras (&amp;lt;code&amp;gt;#SBATCH --partition Hydras&amp;lt;/code&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
==== Submitting a Script from a Specified Path ====&lt;br /&gt;
You can also specify a path to a job you have already created. Click &amp;quot;From Specified Path&amp;quot; and enter the source path, i.e. the path to the directory containing your .sh file. Once you have done that, you can specify the name of the script under Script name, i.e. the name of the .sh file in the directory you&#039;ve navigated to. You can then click &amp;quot;Run&amp;quot; just as you have with your other jobs.&lt;br /&gt;
&lt;br /&gt;
==== Limiting Resource Usage ====&lt;br /&gt;
Limiting your resource usage on servers can help prevent server locks. Use a submit script, similar to the one below, to limit the number of CPU cores and RAM.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
#SBATCH --partition Leviathans&lt;br /&gt;
#SBATCH --nodelist=leviathan3&lt;br /&gt;
&lt;br /&gt;
# #Output file for script.&lt;br /&gt;
#SBATCH --output=%j_output.txt&lt;br /&gt;
&lt;br /&gt;
# #Error file for script.&lt;br /&gt;
#SBATCH --error=%j_error.txt&lt;br /&gt;
&lt;br /&gt;
# # Requests number of CPUs per task&lt;br /&gt;
#SBATCH --ntasks=1&lt;br /&gt;
#SBATCH --cpus-per-task 30&lt;br /&gt;
&lt;br /&gt;
# # Request amount of memory (RAM)&lt;br /&gt;
#SBATCH --mem=110G&lt;br /&gt;
&lt;br /&gt;
python3 examplepython.py&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Wright GPU Cluster ====&lt;br /&gt;
Open OnDemand is also available for the Wright GPU cluster. Documentation can be found [[Open OnDemand Wright|here]].&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=671</id>
		<title>Department Servers</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=671"/>
		<updated>2026-06-25T12:13:59Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using the Servers ==&lt;br /&gt;
&lt;br /&gt;
Accessing the servers requires using an SSH compatible terminal. Applications such as &amp;quot;Command Prompt&amp;quot; on Windows or &amp;quot;Terminal&amp;quot; on MacOS can achieve this.&lt;br /&gt;
To SSH to a server, open either app listed previously and enter the SSH command shown below. Be sure to use your StatDS computing account.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ssh statdsusername@leviathan11.stat.cmu.edu&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;In the line above, replace &amp;quot;hydra1&amp;quot; with the server you want to connect to.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
Servers&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|hydra1&lt;br /&gt;
|ghidorah1&lt;br /&gt;
|leviathan1&lt;br /&gt;
|-&lt;br /&gt;
|hydra2&lt;br /&gt;
|ghidorah2&lt;br /&gt;
|leviathan2&lt;br /&gt;
|-&lt;br /&gt;
|hydra3&lt;br /&gt;
|ghidorah3&lt;br /&gt;
|leviathan3&lt;br /&gt;
|-&lt;br /&gt;
|hydra4&lt;br /&gt;
|&lt;br /&gt;
|leviathan4&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan5&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan6&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan7&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan8&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan9&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan10&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan11&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Hydras ==&lt;br /&gt;
The Hydras are virtual based serves hosted in the Campus Cloud. They offer slightly higher stability and are better for smaller computing jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* Intel Xeon CPU&lt;br /&gt;
** 12 cores @2.6Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Hydra1-4&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@hydra1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1 Grafana Monitoring]&lt;br /&gt;
== Ghidorahs ==&lt;br /&gt;
The Ghidorahs are physical servers located throughout Baker Hall. They are designed for lighter GPU jobs. &lt;br /&gt;
&lt;br /&gt;
Hardware Specifications &lt;br /&gt;
&lt;br /&gt;
* Core i9-13900KF CPU &lt;br /&gt;
** 8 performance cores @5.4Ghz &lt;br /&gt;
** 16 Efficiency cores @4.3Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* RTX 4090 24GB of video memory&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1 Grafana Monitoring]&lt;br /&gt;
== Leviathans ==&lt;br /&gt;
The Leviathans are physical servers located throughout Baker Hall and the Cyert Data Center. They are designed for heavy CPU and RAM jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* AMD Ryzen 9 9950x&lt;br /&gt;
** 16 cores @5.7Ghz&lt;br /&gt;
* 128GB of RAM (Leviathan1-6)&lt;br /&gt;
* 196GB of RAM (Leviathan7-11)&lt;br /&gt;
* 4TB of local NVME storage&lt;br /&gt;
** Mounted at /scratch&lt;br /&gt;
** Data stored in this location will only be accessible on the original server.&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Leviathan1-11&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@leviathan1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
* You can use &amp;quot;levi&amp;quot; in place of &amp;quot;leviathan&amp;quot;&lt;br /&gt;
** &#039;&#039;ssh yourusername@levi1.stat.cmu.edu&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1 Grafana Monitor]&lt;br /&gt;
&lt;br /&gt;
== Storage ==&lt;br /&gt;
Each server&#039;s &amp;quot;/home&amp;quot; directory located on the department&#039;s NAS. This means your files will be accessible on every server.&lt;br /&gt;
&lt;br /&gt;
The NAS is a total of 100TB. This space is shared and monitored for fair usage. If you store large amounts of data, you may be asked if it is all necessary.&lt;br /&gt;
To see available space on the NAS, run the command below in a terminal on the server.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
df -h | grep &amp;quot;/home&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;To see your total usage run the command below. &#039;&#039;It may take a few minutes to finish&#039;&#039;&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 du -sh ~&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
The servers within Statistics &amp;amp; Data Science offer a variety of software. Sudo access, also referred to as the ability to install software, on department servers is not allowed. If a software package you would like to use is not listed below, please contact remarks@stat.cmu.edu.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|Python&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Apptainer&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Quarto&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Gurobi &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Rstudio-Server&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Matlab&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Julia&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=670</id>
		<title>Department Servers</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Department_Servers&amp;diff=670"/>
		<updated>2026-06-25T12:12:57Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Software */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Hydras ==&lt;br /&gt;
The Hydras are virtual based serves hosted in the Campus Cloud. They offer slightly higher stability and are better for smaller computing jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* Intel Xeon CPU&lt;br /&gt;
** 12 cores @2.6Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Hydra1-4&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@hydra1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/beuw1q6y3dgjkc/hydra-cluster?orgId=1 Grafana Monitoring]&lt;br /&gt;
== Ghidorahs ==&lt;br /&gt;
The Ghidorahs are physical servers located throughout Baker Hall. They are designed for lighter GPU jobs. &lt;br /&gt;
&lt;br /&gt;
Hardware Specifications &lt;br /&gt;
&lt;br /&gt;
* Core i9-13900KF CPU &lt;br /&gt;
** 8 performance cores @5.4Ghz &lt;br /&gt;
** 16 Efficiency cores @4.3Ghz &lt;br /&gt;
* 64GB of RAM&lt;br /&gt;
* RTX 4090 24GB of video memory&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/edkar1rgy3l6od/ghidorah-cluster?orgId=1 Grafana Monitoring]&lt;br /&gt;
== Leviathans ==&lt;br /&gt;
The Leviathans are physical servers located throughout Baker Hall and the Cyert Data Center. They are designed for heavy CPU and RAM jobs.&lt;br /&gt;
&lt;br /&gt;
Hardware Specifications&lt;br /&gt;
&lt;br /&gt;
* AMD Ryzen 9 9950x&lt;br /&gt;
** 16 cores @5.7Ghz&lt;br /&gt;
* 128GB of RAM (Leviathan1-6)&lt;br /&gt;
* 196GB of RAM (Leviathan7-11)&lt;br /&gt;
* 4TB of local NVME storage&lt;br /&gt;
** Mounted at /scratch&lt;br /&gt;
** Data stored in this location will only be accessible on the original server.&lt;br /&gt;
* NAS used for /home storage&lt;br /&gt;
Servers = Leviathan1-11&lt;br /&gt;
&lt;br /&gt;
ssh yourusername@leviathan1.stat.cmu.edu&lt;br /&gt;
&lt;br /&gt;
* You can use &amp;quot;levi&amp;quot; in place of &amp;quot;leviathan&amp;quot;&lt;br /&gt;
** &#039;&#039;ssh yourusername@levi1.stat.cmu.edu&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[https://info.stat.cmu.edu/grafana/d/asjkldfbnvajdsfh213/leviathan-cluster?orgId=1 Grafana Monitor]&lt;br /&gt;
&lt;br /&gt;
== Storage ==&lt;br /&gt;
Each server&#039;s &amp;quot;/home&amp;quot; directory located on the department&#039;s NAS. This means your files will be accessible on every server.&lt;br /&gt;
&lt;br /&gt;
The NAS is a total of 100TB. This space is shared and monitored for fair usage. If you store large amounts of data, you may be asked if it is all necessary.&lt;br /&gt;
To see available space on the NAS, run the command below in a terminal on the server.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
df -h | grep &amp;quot;/home&amp;quot;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;To see your total usage run the command below. &#039;&#039;It may take a few minutes to finish&#039;&#039;&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
 du -sh ~&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Using the Servers ==&lt;br /&gt;
&lt;br /&gt;
Accessing the servers requires using an SSH compatible terminal. Applications such as &amp;quot;Command Prompt&amp;quot; on Windows or &amp;quot;Terminal&amp;quot; on MacOS can achieve this.&lt;br /&gt;
To SSH to a server, open either app listed previously and enter the SSH command shown below. Be sure to use your StatDS computing account.&amp;lt;syntaxhighlight lang=&amp;quot;bash&amp;quot;&amp;gt;&lt;br /&gt;
ssh statdsusername@leviathan11.stat.cmu.edu&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;In the line above, replace &amp;quot;hydra1&amp;quot; with the server you want to connect to.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
Servers&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|hydra1&lt;br /&gt;
|ghidorah1&lt;br /&gt;
|leviathan1&lt;br /&gt;
|-&lt;br /&gt;
|hydra2&lt;br /&gt;
|ghidorah2&lt;br /&gt;
|leviathan2&lt;br /&gt;
|-&lt;br /&gt;
|hydra3&lt;br /&gt;
|ghidorah3&lt;br /&gt;
|leviathan3&lt;br /&gt;
|-&lt;br /&gt;
|hydra4&lt;br /&gt;
|&lt;br /&gt;
|leviathan4&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan5&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan6&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan7&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan8&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan9&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan10&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|leviathan11&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Software ==&lt;br /&gt;
The servers within Statistics &amp;amp; Data Science offer a variety of software. Sudo access, also referred to as the ability to install software, on department servers is not allowed. If a software package you would like to use is not listed below, please contact remarks@stat.cmu.edu.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!&lt;br /&gt;
!Hydras&lt;br /&gt;
!Ghidorahs&lt;br /&gt;
!Leviathans&lt;br /&gt;
|-&lt;br /&gt;
|Python&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|R&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Apptainer&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Quarto&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Gurobi &lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Rstudio-Server&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Matlab&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|-&lt;br /&gt;
|Julia&lt;br /&gt;
|X&lt;br /&gt;
|&lt;br /&gt;
|X&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Globus&amp;diff=669</id>
		<title>Globus</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Globus&amp;diff=669"/>
		<updated>2026-06-22T14:03:07Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Do you have a need to share files located on the StatDS computing environment with external users? &lt;br /&gt;
&lt;br /&gt;
If so, follow the steps below to configure and use Globus.&lt;br /&gt;
&lt;br /&gt;
== Initial Set Up ==&lt;br /&gt;
This section will cover signing into Globus and connecting to the StatDS collection. Globus requires a separate account that is tied to your AndrewID.&lt;br /&gt;
&lt;br /&gt;
1- Log in using the Google option with your AndrewID.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;https://app.globus.org/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2- Add the collection.&lt;br /&gt;
&lt;br /&gt;
2a- Go to “File Manager” &amp;gt; “Collection” &amp;gt; then use the search bar and type &amp;quot;&#039;&#039;Carnegie Mellon University Statistics &amp;amp; Data Science&amp;quot;&#039;&#039;&lt;br /&gt;
[[File:Globus1.png|thumb|1023x1023px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
2b-  Select the collection, then click “Continue” to sign in.&lt;br /&gt;
[[File:Globus2.png|none|thumb|794x794px]]&lt;br /&gt;
2c- Once you are signed in, you will be taken to a page with all of your /home directory contents.&lt;br /&gt;
&lt;br /&gt;
== Create a Shareable Link for External User ==&lt;br /&gt;
&#039;&#039;The receiving user needs a Globus account&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
1- Navigate to a directory you would like to share within the Statistics &amp;amp; Data Science Collection.&lt;br /&gt;
&lt;br /&gt;
2- In the menu on the right of the page select “Share”.&lt;br /&gt;
[[File:Globus3.png|thumb|677x677px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
3- In the new page select “Add Guest Collection”.&lt;br /&gt;
[[File:Globus4.png|thumb|680x680px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
4- Verify the &amp;quot;Directory&amp;quot; you want to share is correct and provide a “Name” and “Description”.&lt;br /&gt;
[[File:Globus5.png|thumb|699x699px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
5 -  Once the Collection is created, go to “Collections” on the left menu bar and select the newly created Collection.&lt;br /&gt;
[[File:Globus6.png|thumb|1041x1041px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
6- Once in the Collection, select “Permissions” at the top and then “Add Permissions - Share With”.&lt;br /&gt;
[[File:Globus7.png|thumb|1041x1041px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
7 - On the new page, your path will default to “/”. This is the root path of the folder you chose to share. Enter the email of the user whom you want to share with.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Change permissions as required.&#039;&#039;&lt;br /&gt;
[[File:Globus8.png|thumb|777x777px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
The external user will receive an email that contains a link to access the collection with their GlobusID. The user can ONLY access the folder you created a collection for.[[File:Globus9.png|thumb|788x788px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Once the user opens Globus and the collection, they can download/upload (depending on the permissions you granted) to the collection.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Screenshot below is of external user’s Globus&#039;&#039;&lt;br /&gt;
[[File:Globus10.png|thumb|849x849px|alt=|none]]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=668</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=668"/>
		<updated>2026-06-03T14:09:09Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download button within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|thumb|761x761px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and follow the remaining prompts to download and install the application.&lt;br /&gt;
[[File:RDP2.png|thumb|738x738px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and click &amp;quot;Generate Code&amp;quot; to initiate a remote session. If you get a warning about allowing Chrome RDP to access certain settings on your machine, go through each prompted setting and make sure it has the proper access.&lt;br /&gt;
[[File:RDP5.png|none|thumb|749x749px]]&lt;br /&gt;
&lt;br /&gt;
2. Share the code with the other party so they can control your machine.&lt;br /&gt;
[[File:RDP6.png|none|thumb|759x759px]]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=667</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=667"/>
		<updated>2026-06-03T14:05:45Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|thumb|761x761px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|thumb|738x738px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and click &amp;quot;Generate Code&amp;quot; to initiate a remote session. If you get a warning about allowing Chrome RDP to access certain settings on your machine, go through each prompted setting and make sure it has the proper access.&lt;br /&gt;
[[File:RDP5.png|none|thumb|749x749px]]&lt;br /&gt;
&lt;br /&gt;
2. Share the code with the other party so they can control your machine.&lt;br /&gt;
[[File:RDP6.png|none|thumb|759x759px]]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=File:RDP6.png&amp;diff=666</id>
		<title>File:RDP6.png</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=File:RDP6.png&amp;diff=666"/>
		<updated>2026-06-03T14:05:24Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Share code&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=665</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=665"/>
		<updated>2026-06-03T14:01:38Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Using Chrome Remote Desktop */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|thumb|761x761px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|thumb|738x738px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and click &amp;quot;Generate Code&amp;quot; to initiate a remote session.&lt;br /&gt;
[[File:RDP5.png|none|thumb|749x749px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=File:RDP5.png&amp;diff=664</id>
		<title>File:RDP5.png</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=File:RDP5.png&amp;diff=664"/>
		<updated>2026-06-03T14:01:15Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Generate code&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=663</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=663"/>
		<updated>2026-06-03T13:55:20Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|thumb|761x761px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|thumb|738x738px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and click &amp;quot;Generate Code&amp;quot; to initiate a remote session.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=662</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=662"/>
		<updated>2026-06-03T13:54:59Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Using Chrome Remote Desktop */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|thumb|761x761px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|thumb|738x738px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;br /&gt;
== Go to https://remotedesktop.google.com/support and click &amp;quot;Generate Code&amp;quot; to initiate a remote session. ==&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=661</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=661"/>
		<updated>2026-06-03T13:54:08Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: /* Using Chrome Remote Desktop */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|thumb|761x761px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|thumb|738x738px|alt=|none]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=660</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=660"/>
		<updated>2026-06-03T13:52:11Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|left|thumb|761x761px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|left|thumb|738x738px]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=659</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=659"/>
		<updated>2026-06-03T13:51:38Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download Chrome Remote Desktop ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|left|thumb|724x724px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|left|thumb|738x738px]]&lt;br /&gt;
&lt;br /&gt;
== Using Chrome Remote Desktop ==&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=658</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=658"/>
		<updated>2026-06-03T13:50:42Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download the Application ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|left|thumb|724x724px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|left|thumb|738x738px]]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=657</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=657"/>
		<updated>2026-06-03T13:50:30Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Download the Application ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|left|thumb|724x724px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download. Pay attention to the on screen instructions to finish installing the application.&lt;br /&gt;
[[File:RDP2.png|left|thumb|738x738px]]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=656</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=656"/>
		<updated>2026-06-03T13:46:19Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Downloading the Application ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|left|thumb|724x724px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. A new window will pop-up, click &amp;quot;Add to Chrome&amp;quot; and select any additional options to allow the download.&lt;br /&gt;
[[File:RDP2.png|border|left|thumb|772x772px]]&lt;br /&gt;
&lt;br /&gt;
3. Once the download completes, click &amp;quot;Accept &amp;amp; Install&amp;quot; under Ready to Install.&lt;br /&gt;
[[File:RDP3.png|border|left|thumb|800x800px]]&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=File:RDP3.png&amp;diff=655</id>
		<title>File:RDP3.png</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=File:RDP3.png&amp;diff=655"/>
		<updated>2026-06-03T13:44:17Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Accept and install&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=File:RDP2.png&amp;diff=654</id>
		<title>File:RDP2.png</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=File:RDP2.png&amp;diff=654"/>
		<updated>2026-06-03T13:42:10Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Download the app 2&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
	<entry>
		<id>https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=653</id>
		<title>Chrome Remote Desktop</title>
		<link rel="alternate" type="text/html" href="https://info.stat.cmu.edu/index.php?title=Chrome_Remote_Desktop&amp;diff=653"/>
		<updated>2026-06-03T13:38:56Z</updated>

		<summary type="html">&lt;p&gt;Jacobg2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Downloading the Application ==&lt;br /&gt;
Follow the instructions below to install and use Chrome Remote Desktop.&lt;br /&gt;
&lt;br /&gt;
1. Go to https://remotedesktop.google.com/support and log in with your Andrew ID. Click the blue download within &amp;quot;Share this Screen&amp;quot; to install the application.&lt;br /&gt;
[[File:RDP1.png|border|left|thumb|724x724px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2.&lt;/div&gt;</summary>
		<author><name>Jacobg2</name></author>
	</entry>
</feed>