1 / 66

Introduction to Grid and High Performance Computing

Introduction to Grid and High Performance Computing. Grid Computing and High Performance Computing Iceberg Getting Connected Basic UNIX/Linux Commands Shell Scripting Using Schedulers and Sun Grid Engine. Introduction to Linux on Iceberg. Working with Directories Help! Running Programs

Télécharger la présentation

Introduction to Grid and High Performance Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Grid and High Performance Computing • Grid Computing and High Performance Computing • Iceberg • Getting Connected • Basic UNIX/Linux Commands • Shell Scripting • Using Schedulers and Sun Grid Engine

  2. Introduction to Linux on Iceberg • Working with Directories • Help! • Running Programs • Exercise

  3. Research Computing Infrastructure • HPC Cluster • Computing clusters ( e.g. iceberg ) • Campus Grid • Departmental clusters, servers and PC network • Cloud Computing • Access resources over internet on demand, Amazon EC2, Microsoft Azure • Grid Computing • Particle Physics Data Grid

  4. Supercomputing • Capability Computing • e.g. Parallel Fluent, Molecular dynamics, MHD • Capacity Computing • Throughput computing blast searches, pattern searches, data searching • Grid computing • Heterogeneous resources e.g. ppgrid, DAME, cosmogrid (large scale capability) • At home projects, boinc, Condor etc. (capacity computing)

  5. Engine flight data London Airport Airline New York Airport Grid Diagnostics centre Maintenance Centre American data center European data center Grid Computing : Data Grid • Particle physics data grid, Distributed Aircraft Maintenance Environment • Computing Network stores large volume of data across network • Heterogeneous • Multiple data sources

  6. National HPC Services • Archer • UK National Supercomputing Service • Hardware – CRAY XC30 • 2632 Standard nodes • Each node contains two Intel E5-2697 v2 12-core processors • Therefore 2632*2*12 63168 cores. • 64 GB of memory per node • 376 high memory nodes with128GB memory • Nodes connected to each other via ARIES low latency interconnect • Research Data File System – 7.8PB disk • http://www.archer.ac.uk/ • EPCC • HPCC Facilities • http://www.epcc.ed.ac.uk/facilities/national-facilities • Training and expertise in parallel computing

  7. Regional Computing Service Services • N8 Computing Service • Polaris facility – based in Leeds • 1/8 owned by The University of Sheffield • Iceberg is the gateway • http://www.shef.ac.uk/wrgrid/n8

  8. N8 cluster specifications Hardware • 316 nodes (5,056 cores) with 4 GByte of RAM per core (each node has 8 DDR3 DIMMS each of 8 GByte). These are known as "thin nodes". • 16 nodes (256 cores) with 16 GByte of RAM per core (each node has 16 DDR3 DIMMS each of 16 GByte). These are known as "fat nodes". • Each node comprises two of the Intel 2.6 GHz Sandy Bridge E5-2670 processors. • Each processor has 8 cores, giving a total core count of 5,312 cores • Each node has a single 500 GB SATA HDD • There are 4 nodes in each Steelhead chassis. 79 chassis have 4 GB/core and 4 more have 16 GB/core Connectivity • the compute nodes are fully connected by Mellanox QDR InfiniBand high performance interconnects with 2:1 blocking File System & Storage • 109 TBytes NFS filesystem where user $HOME is mounted. Quota controlled and backed up regularly. • 174 TBytes Lustre parallel file system. There is no quota control. It is not backed up and files are automatically expired after 90 days.

  9. Iceberg: Summary of Facts & Figures • Processor cores:           3440 cores + 16 GPUs • Total Main Memory:       31.8 TB • Filestore:                          45 TB • Temporary Disk Space:  260 TB • Physical size:                   8 racks • Power consumption:        83.7 KW

  10. iceberg cluster specifications Intel Ivy Bridge nodes  all infiniband connected, containing; 92 nodes each with 16 cores and 64 GB of memory ( i.e. 2 * 5-core Intel E5-2650-v2 ) 4  nodes each with 16 cores and 256 GB of memory TOTAL INTEL CPU CORES = 1152  , TOTAL MEMORY = 2400 GBScratch space on each node is 400 GB Intel Westmere based nodes all infiniband connected, containing; 103 nodes each with 12 cores and 24 GB of memory ( i.e. 2 * 6-core Intel X5650 ) 4  nodes each with 12 cores and 48 GB of memory TOTAL INTEL CPU CORES = 1152  , TOTAL MEMORY = 2400 GBScratch space on each node is 400 GB

  11. iceberg cluster specifications : GPU Computing Kepler K40M  all infiniband connected, containing; 8  Nvidia Tesla Kepler K40Ms GPU units for GPU programming 2880 thread processor cores per GPU 12GB GDR memory per GPU Total GPU memory = 96 GBEach GPU unit is capable of about 4.3TFlop of single precision floating point performance, or 1.4TFlops at double precision. Hence yielding maximum GPU processing power of upto 11.2 TFlops in total. Fermi M2070 all infiniband connected, containing; 8  Nvidia Tesla Fermi M2070s GPU units for GPU programming 448 thread processor cores per GPU 6GB GDR memory per GPU Total GPU memory = 48 GBEach GPU unit is capable of about 1TFlop of single precision floating point performance, or 0.5TFlops at double precision. Hence yielding maximum GPU processing power of upto 8 TFlops in total.

  12. Iceberg Cluster There are two head-nodes for the iceberg cluster login login login HEAD NODE1 Iceberg(1) HEAD NODE2 Iceberg(2) qsh,qsub,qrsh qsh,qsub,qrsh Worker node Worker node Worker node Worker node Worker node Worker node There are 232 worker machines in the cluster All workers share the same user filestore Worker node Worker node Worker node Worker node Worker node Worker node

  13. Iceberg cluster interconnection types • Two main Interconnect types: Gigabit (commodity), Infiniband (more specialist) • Gigabit – All nodes are connected to each other via the standard Gigabit ethernet connections. This is suitable for parallel MPI jobs that do not require high-volume communications • Infiniband – High-End solution for large parallel applications has become defacto standard for clusters (speeds upto 4Gb/s) ( 2:1 nonblocking )

  14. Accessing polaris and iceberg Register for an account http://www.shef.ac.uk/wrgrid/iceberg/register Terminal access is described at:http://www.shef.ac.uk/wrgrid/using/access Recommended access is via any browser at: www.shef.ac.uk/wrgrid This uses Sun Global Desktop ( All platforms, Graphics-capable)Also possible: Using an X-Windows client ( MS Windows, Graphics-capable) Exceed 3D Cygwin Various ssh clients (MS Windows, Terminal-only ) putty, SSH Note: ssh clients can also be used in combination with Exceed or Cygwin to enable graphics capability. Above web page describes how this can be achieved.

  15. Secure Shell • Program to log into another computer over a network • Execute commands on a remote machine • Move files from one machine to another • Provides strong authentication and secure communications over insecure channels. • Intended as a replacement for rlogin, rsh, rcp, and rdist.

  16. SSH method of access from MAC or Linux platforms • You only need the SSH client. The server is unnecessary, unless you wish to connect back to your home machine via the Internet using SSH. • Connecting to our N8 polaris machinessh -l shemg polaris.leeds.ac.uk • To use X-windows add the "-X" flag • SSH will then carry Xwindows traffic over the Internet to connect • Range of options for changing ports, specifying authentication files, encryption algorithms etc…. • Use man ssh for help with options Note1:-X parameter is needed to make sure that you can use the graphics or gui capabilities of the software on iceberg.Note2: Depending on the configuration of your workstation you may also have to issue the command : xhost + before the ssh command.

  17. Web browser method of access: Sun Global Desktop Start session on headnode Start an interactive session on a worker Start Application on a Worker Help

  18. Terminal access from Windows platforms via Exceed • X Concepts • Using the Exceed Software • Starting an xterm session • Starting a ssh session

  19. Basic X Concepts • X Server runs on local machine • PC Exceed, Cygwin, Xming • UNIX Workstation Included in OS • Apple Mac Exodus • X Client runs on remote machine • Graphical Application • xterm • xcalc • Modelling and visualisation packages etc.

  20. ssh on Managed/XP workstations Secure-shell client can be accessed via; Start Unix_ConnectivityExceed3Dssh. When the program initialises you will be asked to enter hostname (default is iceberg) , username and password.

  21. ssh on Managed/XP workstations When ssh starts you will be presented with the login panel as shown below; Default host name is iceberg.shef.ac.uk and can be changed if you want to login somewhere else. You may next be asked if you wish to save the public host-key into a local-database. This is not a crucial question and you may answer YES or NO. Also if asked to provide host response just press ENTER.

  22. Exceed on the stand-alone PCsStarting an Exceed xterm session Start Exceed ->Xstart and fill in the panel as shown below Fill in host,username,p/w,command and click on the run icon to start xterm

  23. Exceed on the stand-alone PCsAn Exceed xterm session

  24. Multiple ssh or xterm shells • There are no limits to the number of ssh or xterm windows one can start simultaneously by methods described in the previous slides. If you wish to open another x-terminal, it is simpler to start it from an existing x-term window by simply typing xterm & or Xterm or uterm. uterm is a home configured xterm for accessing iceberg from gnome-based Linux workstations with nicer fonts. • On iceberg we also have a local command named Xtermthat starts up an xterm window with nicer to use parameters. On iceberg we strongly recommend that you use Qsh rather than xterm or Xterm command so as to make use of a free worker node. Qsh will act like Xterm but will make use of a worker node. • Typing exit will terminate an xterm or ssh session neatly. • This will also close the xterm window but not the ssh window. ssh windows can be closed via the file exit menu.

  25. Some basic rules • Unix is case sensitive. • Commands are in lower case. • Backspace and/or Del Keys correct typing errors. If the terminal parameters are not correctly set; try Ctrl+H • Ctrl+C Aborts a program or command. • You can use the arrow keys to recall previous commands, optionally edit and execute them.

  26. Key combinations in bash

  27. passwords • In normal linux environment the passwd command can be used to change the user passwords. However, because we manage passwords centrally this command will not work on iceberg. • If you wish to change your iceberg password you will have to do this via a web interface at the following URL: • http://www.shef.ac.uk/cics/password

  28. Filenames • Filenames can comprise of: • a-z, A-Z alphabetic characters • 0-9 digits • .-_+ special characters • mon+tue_01.06-03-96 • Wildcards when referencing files • * any character or sequence of characters • ? any single character

  29. Format of Unix commands • command [option ...] [filename ...] eg: ls ls -l tutorial more tutorial

  30. List Directory • ls list directory • ls -l list directory in long format • ls -a list all (inc. hidden) files • -rw------ l course01 57 Oct 18 11:05 hello.c Access Permissions Date and time last modified Number ofbytes in file

  31. Directory Structure / (root) home usr cs4un1 cs4un2 Home directory of user cs4un1 : /home/cs4un1 When you log in you are positioned in your home directory. The environment variable $HOME is also set to contain this directory name.

  32. Working with Directories • pwd print working directory • cd change directory • cd move to home directory • cd .. move up one level • cd mydir move into a subdirectory • cd /var/adm move to an absolute directory • mkdir directory_namecreate a new directory • rmdir directory_name delete an empty directory

  33. Displaying contents of a text_file • less filenameormore filename These commands will start listing the contents of filename on screen and pause after a screenfull of data. less is more powerfull than more and will also respond to cursor keys While pausing, use the following characters to control the output. Spacebar next screenful n Spacebar : next n lines Enter next line b back one screen n b : back n screen’s full q quit ? or h list commands where n is a whole number

  34. Displaying contents of a text_file… continued • cat [options] filename [filename … ] This command will output the contents of filename[s] to standard-output ( normally screen) without pausing. Following options are useful; -v display non-printing characters -n display with lines numbered on the left • tail [-n] filename Thiscommand lists the last n lines of a text file. If number [n] is omitted it is assumed to be 10.

  35. Editors • There are a number of editors for Linux platforms most are not as easy to use as the Windows based editors. Our recommendation is; • Use gedit or nedit if you are using XWindows ‘e.g. Exceed’, cygwin. • Use vi if you have a text terminal ‘telnet’. • gedit Best at the moment ! • nedit Easy ‘graphical’ , good. • vi, vim Require some knowledge, vi is aliased to vim it also has navigable help ( but not easy to use) via the :h command • emacs Have faithful following, good once learned.

  36. Renaming and deleting files • mv :This command will move a file or directory to a new location. It can thus be used to rename files/directories as well as change their locations in the global directory structure. Syntax: mv source destination Example: mv myfile mynewfile mv myfile subdirectory/myfile mv mysubdir mynewsubdir • rm : This command will delete a file (optionally a directory if used with –r option). Syntax: rm object_to_delete Example: rm myfile rm –r mydirectory

  37. Searching in files • Syntax: grep string file This command finds and prints out the lines in the file(s) containing the specified string string = word or phrase file = file or list of files (wild_card can be used) • Note: We strongly advise that the string is quoted. Examples: grep ‘Green Man’ england.dat grep ‘Zodiac’ t*.dat grep ‘Zone[a-z]’ security.fil

  38. Copying files • Copy files (optionally directories) cp fromfile tofile Some of the useful options are: -R or –r : Recursive copy ‘fromfile’ is a directory so the entire directory and its contents are copied. e.g. cp –r mydir newdir -p : preserve. Preserves all attributes of the file ,such as access rights and creation date. • Copy and concatenate files by using cat • cat command concatenates contents of list of files and directs the output to standard output (normally screen). When used with redirection ‘>’ it can be used to join files together. e.g. cat file1 file2 file3 > new_big_file

  39. Manual Pages • Man: Manual pages give text-based help on usage. • There is usually one manual page per command which is located in one of the directories defined by the MANPATH environment variable. • To access the manual page for a command just type; • man command • To get a list of manual pages that contain a ‘word’ type; • man – k topic

  40. Finding files and information about them • find:Finds a file in the directory hierarchy • Example : find . –name “myprog.*” -print • Note: it is safe to enclose strings containing wild characters in quotas • which : Shows in which directory a command is located. • Syntax: which command_name • file: Can be used to see what type of data a particular file contains. For example, script , program, library, executable binary etc… • Syntax: file command_name

  41. Using find • Searches recursively for specified file • find [-H] [-L] [-P] path_list options action • -H L P control the treatment of symbolic links ( not of concern in an average user's directory) • Options: • -name filename ( e.g. -name diary.txt ) • -size nnn( e.g. -size +10M ) • -atime nnn (time last accessed) (e.g. -atime -3 ) • -mtime nnn (time last modified) (e.g. -mtime -7 ) • Note: number can be minus (-) to indicate less then , plus(+) to indicate more than or without a sign to indicate exactly .

  42. Find Examples • Find a file called mystery in /bin and /usr and print the result • find /bin /usr –name libGL* –print • find . –user myusername –print • Find files accessed in the last n days • find . –atime n –print • Find files modified within the last n days • find . –mtime -n -print (e.g. find . -ntime -7 –print • Note: -print is usually the default and can be omitted.

  43. Issuing System Commands on Files Found • Use the exec option of the find command • Copy found file to a specified directory, curly braces instruct find to substitute the name of the file in this location • find . –name “*.doc” –exec cp {} document \; • File is copied to directory document • ; is needed to terminate the execute command • \ escape character to take away special meaning of ; in find • Reaffirm execution of system commands using –ok option • find . -name “*.doc” -ok rm {} \; • Search for a string in all the find files • -find . –name “*.doc” –exec grep “Iceberg” {} \; -print • Warning be careful of space between {} and \; note order \;

  44. Resources 1: Filestore • Two areas of filestore available on Iceberg. • A permanent, secure, backed up area in your home directory /home/username • data directory /data/username • Not backed up to tape • Data is mirrored on the storage server

  45. Resources2: Scratch area • Temporary data storage on local compute nodes • I/O much faster than NFS mounted /home and /data • Data not visible to other worker nodes and not backed up • Create a directory using your username in /scratch on a worker and work from this directory • The data in the /scratch area is deleted periodically when the worker is not accessed by any processor or jobs

  46. Resources 3: Storage Allocations • Storage allocations for each area are as follows: • Your home directory has a filestore of 5 GB,but you can request additional space. • If you change directory to /data you will see a directory labelled by your username. • In /data you can store 50GB of files you can request additional space.

  47. Resources 4: Important Notes • The data area is not backed up. • Check quota regularly if you go over quota the account will become frozen you’ll need to contact iceberg-admins • Check quota using the command quota • If you exceed your quota using the RM command • Note upper case

  48. Resources 5 : Transferring Data Summary of file transfer methods as well as links to downloadable tools for file transfers to iceberg are published at:http://www.sheffield.ac.uk/wrgrid/using/access • Command line tools such as scp, sftp and gftp are available on most platforms. • Can not use ftp ( non-secure ) to iceberg. • File Transfer Applications • Filezilla (Linux, MAC, Windows) • https://filezilla-project.org/ • WinSCP • http://winscp.net/eng/index.php

  49. Working with files To copy a file: cp my_file my_new_file To move ( or rename ) a file : mv my_file my_new_file To delete a file : rm my_file To list the contents of a file : less file_name To make a new directory( i.e. folder) : mkdir new_directory To copy a file into another directory: cp my_file other_directory To move a file into another directory: mv my_file other_directory To copy a directory to another location: cp –R directory other_directory To remove a directory and all its contents!!!: rm –R directory ( use with care ) Wildcards : * means matching any sequence of characters. For example: cp *.dat my_directory

  50. Running programs • Two modes of operation foreground and background • Foreground Interact with program via keyboard/screen • Background No connection with keyboard/screen Submit to backbround by Appending ‘&’ EG: myprog >& myfile & The symbols ‘>&’ redirect output and any errors to the file myfile Although the above method of running jobs on the background is feasible, the prio we recommend that you submit your background into the batch queue via the qsub command.

More Related