joint high performance computing exchange (jhpce) cluster ... · that schedules programs (jobs) -...

45
Joint High Performance Computing Exchange (JHPCE) Cluster Orientation http://www.jhpce.jhu.edu/

Upload: others

Post on 22-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

Joint High Performance Computing Exchange (JHPCE) Cluster Orientation

http://www.jhpce.jhu.edu/

Page 2: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Schedule- Introductions – who are we, who are you?- Terminology- Logging in and account setup- Basics of running programs on the cluster- Details – limits and resources- Examples

Page 3: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Who we are:- JHPCE – Joint High Performance Computing Exchange

- Director: Dr. Fernando J. Pineda- Technology Manager: Mark Miller- Systems Engineer: Jiong Yang

- Beyond this class, when you have questions:- http://www.jhpce.jhu.edu - lotsofgoodFAQinfo- [email protected]

- Systemissues(passwordresets/diskspace)- Monitoredbythe3peopleabove

- [email protected] Applicationissues(R/SAS/perl...)- MonitoredbydozensofapplicationSMEs- Allvolunteers

- Othersinyourlab- WebSearch

Page 4: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Who are you?- Name- Department- How do you plan on using the cluster?- Will you be accessing the cluster from a Mac or a

Windows system?- What is your experience with Unix?- Any experience using other clusters?

Page 5: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Schedule- Introductions – who are we, who are you?- Terminology- Logging in and account setup- Basics of running programs on the cluster- Details – limits and resources- Examples

Page 6: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

What is a cluster?- A collection of many powerful computers that can be

shared with many users.

Page 7: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Node (Computer) Components- Each computer is called a “Node”- Each node, just like a

desktop/laptop has- RAM- CPU

- Cores- Disk space

- Unlike desktop/laptop systems, nodes do not make use of a display/mouse – they are used from a command line interface

- Range in size from a large pizza box to a long shoe box

Page 8: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

The JHPCE cluster components- Joint High Performance Computing Exchange –

JHPCE - pronounced “gypsy”.- Fee for service – nodes purchased by various PIs.- Used for a wide range of Biostatistics – gene

sequence analysis, population simulations, medical treatment analysis.

- Common applications: R, SAS, Stata, perl, python ...- 72 Nodes – 11 racks of equipment- Nodes range from having 2 CPUs to 4 CPUs, with

between 24 and 64 cores. In total we have nearly 3000 cores.

- RAM ranges from 128 GB to 512 GB- Disk space

- Locally attached “scratch” disk space from 250GB to 6TB- Network Attached Storage (NFS) – 4000 TB

Page 9: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

How do programs get run on the compute nodes?- We use a product called “Sun Grid Engine” (SGE)

that schedules programs (jobs)- Jobs are assigned to slots as they become available

and meet the resource requirement of the job- Jobs are submitted to queues

- Shared Queue- Designated queues

- The cluster nodes can also be used interactively.

Page 10: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Why would you use a cluster?- You need resources not available on your local laptop- You need to run a program (job) that will run for a

very long time- You need to run a job that can make use of parallel

computing

Page 11: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Schedule- Introductions – who are we, who are you?- Terminology- Logging in and account setup- Basics of running programs on the cluster- Details – limits and resources- Examples

Page 12: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

How do you use the cluster?- The JHPCE cluster is accessed using SSH.- Use ssh to login to “jhpce01.jhsph.edu”

- For Mac users, you can use ssh from Terminal Window. Also need Xquartz for X Window applications:

http://xquartz.macosforge.org/landing/

- For PC users, you need to install and ssh client – such as MobaXterm or Cygwin, Putty and Winscp :

http://mobaxterm.mobatek.net/

http://www.cygwin.comhttp://www.chiark.greenend.org.uk/~sgtatham/putty/download.htmlhttp://winscp.net

Page 13: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

JHPCE user-model“compute farm”

of compute nodes (hosts)Login serverjhpce01/02

4 cores each

40Gbps

workstations,desktops &laptops

...

...

11/2016

direct attachedlocal disks (internal)

( /tmp, /scratch/temp )

storage farm(NFS/LFS exported file systems)

/thumper2ZFS/NFS

16TB useableSunfire X4500

/amber3ZFS/NFS

100 TB useableSun 7210

(plus expansion)

/dcs01ZFS/NFS

1080TB raw800TB usable

8 SM847E26-RJBOD1 JBODs

with 450 WD Red 3TB disks

40G

bssw

itche

s

2904compute cores

40 Gbps

/dcl01Lustre

4500TB raw3100TB usable

20 SM847E26-RJBOD1 JBODs with

450 WD Red 4TB disks and 450 WD

Red 6TB disks

M.Miller,F.Pineda,M.Newhouse

1 Gbps1 Gbps

Transfer serverjhpce-transfer01

HoRNet

10 Gbps

/users, /legacy, /starter02ZFS/NFS

240TB raw 160TB usable1 SM847E26-RJBOD1 JBOD with 40

WD Red 6TB disks and SSDs for L2ARC and SLOG

Page 14: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Example 1 – Logging in- Bring up Terminal

- Run: ssh <USER>@jhpce01.jhsph.edu

- 2 Factor authentication

- Shell prompt

Page 15: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 1 - Logging In- For Mac Users:

- BringupaTerminal- Run:ssh <USER>@jhpce01.jhsph.edu- LoginwiththeinitialVerificationCodeandPasswordthatweresenttoyou

- For PC Users:- LaunchMobaXterm- clickonthe“Sessions”iconintheupperleftcorner- Onthe“Sessionsettings”screen,clickon“SSH”- Enter“jhpce01.jhsph.edu”asthe“Remotehost”. Clickonthe“Specifyusername”

checkbox,andenteryourJHPCEusernameinthenextfield. Thenclickthe“OK”button.- LoginwiththeinitialVerificationCodeandPasswordthatweresenttoyou.- Ifdialogwindowspopup,click"Cancel"whenpromptedforanotherVerificationCode,or

click"No"or“Donotaskthisagain”whenpromptedtosaveyourpassword.

Page 16: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 1 - Logging In - cont- Change your password with the “passwd” command. You

will be prompted for your current Initial Password, and then prompted for a new password.

- Setup 2 factor authentication- http://jhpce.jhu.edu/knowledge-base/how-to/2-factor-authentication/- 1)Onyoursmartphone,bringupthe"GoogleAuthenticator"app- 2)OntheJHPCEcluster,run"auth_util"- 3)In"auth_util",useoption"5"todisplaytheQRcode(youmayneedtoresizeyourssh

window)- 4)ScantheQRcodewiththeGoogleAuthenticatorapp- 5)In" auth_util",useoption"6"toexitfrom"auth_util"

- Logout of the cluster by typing "exit".- Login to the cluster again with 2 factor authentication

Page 17: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 1 - Logging In - cont- Note "Emergency Scratch Codes"

- Note: 100 GB limit on home directory. Home directories are backed up, but other storage areas may not be.

- (optional) Setup ssh keys

Page 18: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

General Linux/Unix CommandsNavigating Unix:- ls

- ls -l- ls -al

- pwd- cd- man

Looking at files:- more- cat

Changing files witheditors:- nano- vi/emacs

Commands in example script:- date- echo- hostname- sleep- control-C- grep- wc

- Redirection> (Redirect Output to a file)| (pipe - Redirect Output to program)

Good overviews of Linux: http://korflab.ucdavis.edu/Unix_and_Perl/unix_and_perl_v3.1.1.htmlhttps://www.codecademy.com/learn/learn-the-command-line

Page 19: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Schedule- Introductions – who are we, who are you?- Terminology- Logging in and account setup- Basics of running programs on the cluster- Details – limits and resources- Examples

Page 20: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Submitting jobs to the queue with Sun Grid Engine (SGE)- qsub – allows you to submit a batch job to the cluster- qrsh – allows you establish an interactive session

- qstat – allows you to see the status of your jobs

Page 21: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

JHPCE user-model“compute farm”

of compute nodes (hosts)Login serverjhpce01/02

4 cores each

40Gbps

workstations,desktops &laptops

...

...

11/2016

direct attachedlocal disks (internal)

( /tmp, /scratch/temp )

storage farm(NFS/LFS exported file systems)

/thumper2ZFS/NFS

16TB useableSunfire X4500

/amber3ZFS/NFS

100 TB useableSun 7210

(plus expansion)

/dcs01ZFS/NFS

1080TB raw800TB usable

8 SM847E26-RJBOD1 JBODs

with 450 WD Red 3TB disks

40G

bssw

itche

s

2904compute cores

40 Gbps

/dcl01Lustre

4500TB raw3100TB usable

20 SM847E26-RJBOD1 JBODs with

450 WD Red 4TB disks and 450 WD

Red 6TB disks

M.Miller,F.Pineda,M.Newhouse

1 Gbps1 Gbps

Transfer serverjhpce-transfer01

HoRNet

10 Gbps

/users, /legacy, /starter02ZFS/NFS

240TB raw 160TB usable1 SM847E26-RJBOD1 JBOD with 40

WD Red 6TB disks and SSDs for L2ARC and SLOG

Page 22: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 2 - Using the clusterExample 2a – submitting a batch job

cd class-scriptsqsub -cwd script1qstat

examine results files

Example 2b – using an interactive session

qrsh

Note current directory

Page 23: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Never run a job on the login node!- Always use “qsub” or qrsh” to make use of the

compute nodes- Jobs that are found running on the login node may be

killed at will- If you are going to be compiling programs, do so on a

compute node via qrsh. - Even something as simple as copying large files

should be done via qrsh. The compute nodes have 10Gbps connections to the storage systems and jhpce01 only has a 1Gbps connection.

Page 24: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Other useful SGE commandsqstat – shows information about running jobs you are running

qhost – shows information about the nodes

qdel – deletes your job

qacct – shows information about completed jobs

Page 25: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Schedule- Introductions – who are we, who are you?- Terminology- Logging in and account setup- Basics of running programs on the cluster- Details – limits and resources- Examples

Page 26: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

A few options for “qsub”• run the job in the current working directory (where qsub was

executed) rather than the default (home directory)-cwd

• send standard output (error) stream to a different file-o path/filename-e path/filename

• receive notification via email when your job completes-m e -M [email protected]

F.Pineda,M.Newhouse

Page 27: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

File size limitations- There is a default file size limitation of 10GB for all

jobs.- If you are going to be creating files larger than 10GB

you need to use the “h_fsize” option.

- Example:$ qsub -l h_fsize=50G myscript.sh

Page 28: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Embedding options in your qsub script- You can supply options to qsub in 2 ways:

- Onthecommandlineqsub -cwd -l h_fsize=100G -m e -M [email protected] script1.sh

- Settingthemupinyourbatchjobscript.Linesthatstartwith“#$”areinterpretedasoptionstoqsub$ head script1-resource-request.sh#$ -l h_fsize=100G#$ -cwd#$ -m e#$ -M [email protected]

$ qsub script1-resource-request.sh

Page 29: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Requesting resources in qsub or qrsh- By default, when you submit a job, or run qrsh, you are

allotted 1 slot and 2GB of RAM- Note .sge_request file- You can request more RAM by setting mem_free and h_vmem.

- mem_free – isusedtosettheamountofmemoryyourjobwillneed.SGEwillplaceyourjobonanodethathasatleastmem_free RAMavailable.

- h_vmem – isusedtosetahighwatermarkforyourjob.Ifyourjobusesmorethanh_vmem RAM,yourjobwillbekilled.Thisistypicallysettobethesameasmem_free.

- Examples:qsub -l mem_free=10G,h_vmem=10G job1.sh

orqrsh -l mem_free=10G,h_vmem=10G

Page 30: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Estimating RAM usage- No easy formula until you’ve actually run something- A good place to start is the size of the files you will be

reading in- If you are going to be running many of the same type

of job, run one job, and use “qacct -j <jobid>” to look at “maxvmem”.

Page 31: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

MultipleslotsforMulti-threadedjobs

• Use the -pe local N option to request multiple slots on acluster node for a multi-threaded job or session

•The mem_free and h_vmem limits need to be divided by the number of cores/slots requested.

Examples:- A job which will use 8 cores and need 40GB of RAMqsub -cwd -pe local 8 -l mem_free=5G,h_vmem=5G myscript.sh

- A job which will use 10 cores and need 120GB of RAM:qsub -cwd -pe local 10 -l mem_free=12G,h_vmem=12G myscript2.sh

Note:Thelocal parallelenvironmentisaconstructnameparticulartoourcluster…andimpliesthatyourrequestisforthatmanyslotsonasingleclusternode.

F.Pineda,M.Newhouse

Page 32: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Types of parallelism1. Embarrassingly parallel …http://en.wikipedia.org/wiki/Embarrassingly_parallel

2. Multi-core (or multi-threaded) – a single job usingmultiple CPU cores via program threads on a singlemachine (cluster node). Also see discussion of fine-grained vs coarse-grained parallelism athttp://en.wikipedia.org/wiki/Parallel_computing

3. Many CPU cores on many nodes using a Message Passing Interface (MPI) environment. Not used much on the JHPCE Cluster.

F. Pineda, M. Newhouse

Page 33: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

“How many jobs can I submit?”As many as you want … but this should be less than 10000

BUT, only a limited number of “slots” will run. The rest will have thequeue wait state ‘qw’ and will run as your other jobs finish.In SGE, a slot generally corresponds to a single cpu-core.

Currently, the maximum number of standard queue slots per user is 200.There is also a 512GB RAM limit per user.

The maximum number of slots per user may change depending on theavailability of cluster resources or special needs and requests.

There are dedicated queues for stakeholders which may have customconfigurations.

F.Pineda,M.Newhouse

Page 34: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Schedule- Introductions – who are we, who are you?- Terminology- Logging in and account setup- Basics of running programs on the cluster- Details – limits and resources- Examples

Page 35: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 3Running R on the cluster: - In $HOME/class-scripts/R-demo, note 2 files – Script file and R file

- Submit Script file- qsub -cwd plot1.sh

- Run R commands interactively

Page 36: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 4Transferring files to the cluster

- Transfer results back$ sftp [email protected]

Or use WinSCP, Filezilla, mobaxterm…

- Look at resulting PDF file using viewer on laptop

Page 37: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

ModulesModules for R, SAS, Mathematica . . .- module list- module avail- module load- module unload

Page 38: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 5Running RStudio

- X Windows Setup- ForWindows,Mobaxterm hasandXserverbuiltintoit- ForMac,youneedtohavetheXquartz programinstalled(which

requiresareboot),andyouneedtoaddthe"-X"optiontossh:$ ssh -X [email protected]

- Start up Rstudio$ qrsh$ module load rstudio$ rstudio

- Look at pdf from example 4 via xpdf

Page 39: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Other queues- “shared” queue – default queue

- “download” queues- qrsh -l rnet

- (jhpce-transfer01.jhsph.edu )

- “math” queue- qrsh -l math

- “sas” queue- qrsh -l sas

Page 40: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Lab 6Running Stata and SAS

- SAS example:Batch:

$ cd $HOME/class-scripts/SAS-demo$ ls$ cat sas-demo1.sh$ cat class-info.sas$ qsub sas-demo1.sh

Interactive: $ qrsh -l sas$ sas

- Stata example:Batch:

$ cd $HOME/class-scripts/stata-demo$ ls$ cat stata-demo1.sh$ cat stata-demo1.do$ qsub stata-demo1.sh

Interactive:$ qrsh$ stata

or $ xstata

Note – The name of the program and script need not be the same, but it is good practice to keep them the same when possible. Note – Extensions sometimes are meaningful. SAS doesn't care, but Stata programs need to have ".do" as the extension. It is good practice for human readability.

Page 41: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Summary- Review

- GetfamiliarwithLinux- Usessh toconnecttoJHPCEcluster- Useqsub andqrsh tosubmitjobs- Neverrunjobsontheloginnode- Helpfulresources

- http://www.jhpce.jhu.edu/- [email protected] - System issues- [email protected] - Application issues

- What to do next- MakenoteofyourGoogleAuthenticatorscratchcodes(option

2in"auth_util")- Setupssh keysifyouwillbeaccessingtheclusterfrequently

https://jhpce.jhu.edu/knowledge-base/authentication/login/- Playnicewithothers– thisisasharedcommunitysupported

system.

Page 42: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Thanks for attending! Questions?

Page 43: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

General Linux/Unix Commands- ls

- ls -l- ls -al

- pwd- cd- * (Wildcard)

- date- echo- hostname- sleep- control-C

- cp- rm- mv

- mkdir- rmdir

- more, cat- nano, vi (Editors)

- grep- wc- who- man

- Redirection> (Redirect Output to a file)| (pipe - Redirect Output to program)

Good overviews of Linux: http://korflab.ucdavis.edu/Unix_and_Perl/unix_and_perl_v3.1.1.htmlhttps://www.codecademy.com/learn/learn-the-command-line

Page 44: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

JHPCE user-model“compute farm”

of compute nodes (hosts)Login serverjhpce01/02

4 cores each

40Gbps

workstations,desktops &laptops

...

...

11/2016

direct attachedlocal disks (internal)

( /tmp, /scratch/temp )

storage farm(NFS/LFS exported file systems)

/thumper2ZFS/NFS

16TB useableSunfire X4500

/amber3ZFS/NFS

100 TB useableSun 7210

(plus expansion)

/dcs01ZFS/NFS

1080TB raw800TB usable

8 SM847E26-RJBOD1 JBODs

with 450 WD Red 3TB disks

40G

bssw

itche

s

2904compute cores

40 Gbps

/dcl01Lustre

4500TB raw3100TB usable

20 SM847E26-RJBOD1 JBODs with

450 WD Red 4TB disks and 450 WD

Red 6TB disks

M.Miller,F.Pineda,M.Newhouse

1 Gbps1 Gbps

Transfer serverjhpce-transfer01

HoRNet

10 Gbps

/users, /legacy, /starter02ZFS/NFS

240TB raw 160TB usable1 SM847E26-RJBOD1 JBOD with 40

WD Red 6TB disks and SSDs for L2ARC and SLOG

Page 45: Joint High Performance Computing Exchange (JHPCE) Cluster ... · that schedules programs (jobs) - Jobs are assigned to slots as they become available and meet the resource requirement

© 2016, Johns Hopkins University. All rights reserved.

Example of staging data to $TMPDIR###################### stage the input data###################### (1) copy 628MB of compressed data

mkdir $TMPDIR/datacp ~/data/test.tar.Z $TMPDIR/data/.cd $TMPDIR/data

# (2) decompress and untar the data

tar -xzvf test.tar.Zdu -ch $TMPDIR/data | grep total

###################### Do the processing###################### in this case just move the data to a # temporary output directory and tar it again

mkdir $TMPDIR/outputmv $TMPDIR/data $TMPDIR/outputcd $TMPDIR/outputtar -czf results.tar.Z data

###################### save the results of the computation and quit#####################

cp results.tar.Z $HOME/.exit 0

F.Pineda,M.Newhouse