Della

Della is a 4 rack Intel computer cluster, originally acquired through a joint effort of Astrophysics, the Lewis-Sigler Institute for Integrative Genomics, PICSciE and OIT. It is intended as a platform for running both parallel and serial production jobs.  The system has grown over time and includes groups of nodes using different generations of Intel processor technology.  For hardware details, see the Hardware Configuration information below.  All  nodes are connected via a QDR or FDR Infiniband high bandwidth low latency network.

 

System Configuration and Usage

General Guidelines

The head node, della, should be used for interactive work only, such as compiling programs, and submitting jobs as described below. No jobs should be run on the head node, other than brief tests that last no more than a few minutes.  Where practical, we ask that you entirely fill the nodes so that CPU core fragmentation is minimized.

Please remember that these are shared resources for all users.

Maintenance Window

Della will be down for maintenance the second Tuesday of the month from 6-10 AM.

Hardware Configuration

  Processor Speed Nodes Core per Node Memory per Node Total Cores Inter-connect Performance: Theoretical
Della
Dell Linux Cluster
2.67_GHz_Westmere
2.67_GHz_Westmere
2.5_GHz_Ivybridge
2.6_GHz_Haswell
2.4_GHz_Broadwell
16
64
80
32
48
12
12
20
20
28
48 GB
96 GB
128 GB
128 GB
128 GB
4544 QDR Infiniband 42 TFLOPS

The nodes are all connected with QDR Infiniband. The Ivybridge and Haswell nodes (with 20 cores) are connected with FDR Infiniband. So too are the Broadwell (28 core) nodes.

Job Scheduling (QOS parameters)

All jobs must be run through the Slurm scheduler on Della. If a job would exceed any of the limits below, it will be held until it is eligible to run. Jobs should not specify the qos into which it should run, allowing the Slurm scheduler to distribute the jobs accordingly.

Jobs will be assigned a quality of service (QOS) according to the length of time specified for the job:

QOS Time Limit Jobs per user Cores per User Cores Available
test 1 hour 2 jobs [30 nodes] 360 cores
short 24 hours 40 jobs 128 cores no limit
medium 72 hours 16 jobs 128 cores 432 cores
vlong 144 hours
(6 days)
10 jobs 160 cores 400 cores

 

Jobs are further prioritized through the Slurm scheduler based on a number of factors: job size, run times, node availability, wait times, and percentage of usage over a 30 day period (fairshare). Also, these values reflect the minimum limits in effect and the actual values may be higher. Please use the "qos" command to see the limits in effect at the current time.

Recommended File System Usage (/home, /scratch, /tigress)

/home (shared via NFS to all the compute nodes) is intended for scripts, source code, executables and small static data sets that may be needed as standard input/configuration for codes.

/scratch/network (shared via NFS to all the compute nodes) is intended for dynamic data that doesn't require high bandwidth i/o such as storing final output for a compute job. You may a create a directory /scratch/network/myusername, and use this to place your temporary files. Files are NOT backed up so this data should be moved to persistent storage once it is no longer needed for continued computation. Any files left here will be removed after 60 days.

/scratch/gpfs (shared via GPFS to all the compute nodes, 800 TB) is intended for dynamic data that requires higher bandwidth i/o. Files are NOT backed up so this data should be moved to persistent storage as soon as it is no longer needed for computations.

/tigress (shared via GPFS to all TIGRESS resources, 6 PB) is intended for more persistent storage and should provide high bandwidth i/o (20 GB/s aggregate bandwidth for jobs across 16 or more nodes). Users are provided with a default quota of 512 GB when they request a directory in this storage, and that default can be increased by requesting more. We do ask people to consider what they really need, and to make sure they regularly clean out data that is no longer needed since this filesystem is shared by the users of all our systems.

/scratch (local to each compute node) is intended for data local to each task of a job, and it should be cleaned out at the end of each job. Nodes have about 130 to 1400 G available depending on the node.

Running Third-party Software

If you are running 3rd-party software whose characteristics (e.g., memory usage) you are unfamiliar with, please check your job after 5-15 minutes using 'top' or 'ps -ef' on the compute nodes being used. If the memory usage is growing rapidly, or close to exceeding the per-processor memory limit, you should terminate your job before it causes the system to hang or crash. You can determine on which node(s) your job is running using the "scontrol show job <jobnumber>" command.