Prologue to Scientific Computing .


38 views
Uploaded on:
Category: Animals / Pets
Description
Introduction to Scientific Computing. Shubin Liu, Ph.D. Research Computing Center University of North Carolina at Chapel Hill. Course Goals. An introduction to high-performance computing and UNC Research Computing Center Available Research Computing hardware facilities
Transcripts
Slide 1

Prologue to Scientific Computing Shubin Liu, Ph.D. Look into Computing Center University of North Carolina at Chapel Hill

Slide 2

Course Goals A prologue to elite registering and UNC Research Computing Center Available Research Computing equipment offices Available programming bundles Serial/parallel programming devices and libraries How to effectively make utilization of Research Computing offices on grounds

Slide 3

Agenda Introduction to High-Performance Computing Hardware Available Servers, stockpiling, document frameworks, and so on. The most effective method to Access Programming Tools Available Compilers & Debugger apparatuses Utility Libraries Parallel Computing Scientific Packages Available Job Management Hands-on Exercises– 2 nd hour The PPT configuration of this presentation is accessible here: http://its2.unc.edu/divisions/rc/preparing/logical/

Slide 4

Pre-necessities A record on Emerald bunch UNIX Basics Getting started: http://help.unc.edu/?id=5288 Intermediate: http://help.unc.edu/?id=5333 vi Editor: http://help.unc.edu/?id=152 Customizing: http://help.unc.edu/?id=208 Shells: http://help.unc.edu/?id=5290 ne Editor: http://help.unc.edu/?id=187 Security: http://help.unc.edu/?id=217 Data Management: http://help.unc.edu/?id=189 Scripting: http://help.unc.edu/?id=213 HPC Application: http://help.unc.edu/?id=4176

Slide 5

About Us ITS – Information Technology Services http://its.unc.edu http://help.unc.edu Physical areas: 401 West Franklin St. 211 Manning Drive 10 Divisions/Departments Information Security IT Infrastructure and Operations Research Computing Center Teaching and Learning User Support and Engagement Office of the CIO Communication Technologies Communications Enterprise Applications Finance and Administration

Slide 6

Research Computing Center Where and who are we and what do we do? ITS Manning: 211 Manning Drive Website http://its.unc.edu/look into computing.html Groups Infrastructure - Hardware User Support - Software Engagement - Collaboration

Slide 7

About Myself Ph.D. from Chemistry, UNC-CH Currently Senior Computational Scientist @ Research Computing Center, UNC-CH Responsibilities: Support Computational Chemistry/Physics/Material Science programming Support Programming (FORTRAN/C/C++) apparatuses, code porting, parallel figuring, and so on. Direct research and engagement extends in Computational Chemistry Development of DFT hypothesis and idea apparatuses Applications in natural and material science frameworks

Slide 8

What is Scientific Computing? Short Version To utilize elite processing (HPC) offices to take care of genuine logical issues. Long Version, from Wikipedia.com Scientific registering (or computational science) is the field of study worried with developing numerical models and numerical arrangement methods and utilizing PCs to examine and take care of logical and designing issues. In pragmatic utilize, it is regularly the utilization of PC reproduction and different types of calculation to issues in different logical orders.

Slide 9

What is Scientific Computing? Building Sciences Theory/Model Layer Algorithm Layer Scientific Computing Computer Science Applied Mathematics Hardware/Software Natural Sciences Application Layer From logical train perspective From operational perspective High-Performance Computing Scientific Computing Parallel Computing From Computing Perspective

Slide 10

What is HPC? Processing assets which give more than a request of size more figuring force than current top-end workstations or desktops – non specific, generally acknowledged . HPC fixings: extensive ability PCs (quick CPUs) monstrous memory gigantic (quick & expansive) information stockpiling most astounding limit correspondence systems (Myrinet, 10 GigE, InfiniBand, and so forth.) particularly parallelized codes (MPI, OpenMP) perception

Slide 11

Why HPC? What are the three-dimensional structures of the majority of the proteins encoded by a life form\'s genome and how does structure impact work , both spatially and transiently? What examples of rising conduct happen in models of extensive social orders ? How do enormous stars detonate and create the heaviest components in the occasional table? What kind of unexpected moves can happen in Earth\'s atmosphere and biological community structure? How do these happen and under what conditions? In the event that we could outline impetuses molecule by-particle, might we be able to change mechanical combination? What methodologies may be produced to enhance managemen t of complex foundation frameworks? What sort of dialect preparing can happen in vast collections of neurons? Can we empower incorporated arranging and reaction to characteristic and man-made fiascos that avert or minimize the death toll and property? http://www.nsf.gov/bars/2005/nsf05625/nsf05625.htm

Slide 12

Measure of Performance 1 CPU, Units in MFLOPS (x10 6 ) Machine/CPU Type LINPACK Performance Peak Performance Intel Pentium 4 (2.53 GHz) 2355 5060 Mega FLOPS (x10 6 ) Giga FLOPS (x10 9 ) Tera FLOPS (x10 12 ) Peta FLOPS (x10 15 ) Exa FLOPS (x10 18 ) Zetta FLOPS (x10 21 ) Yotta FLOPS (x10 24 ) NEC SX-6/1 (1proc. 2.0 ns) 7575 8000 HP rx5670 Itanium2 (1GHz)   3528 4000 IBM eServer pSeries 690 (1300 MHz) 2894 5200 Cray SV1ex-1-32(500MHz) 1554 2000 Compaq ES45 (1000 MHz) 1542 2000 AMD Athlon MP1800+(1530MHz) 1705 3060 Intel Pentium III (933 MHz) 507 933 http://en.wikipedia.org/wiki/FLOPS SGI Origin 2000 (300 MHz) 533 600 Intel Pentium II Xeon (450 MHz) 295 450 Sun UltraSPARC (167MHz) 237 333 Reference: http://performance.netlib.org/execution/html/linpack.data.col0.html

Slide 13

How to Quantify Performance? TOP500 A rundown of the 500 most capable PC frameworks over the world Established in June 1993 Compiled twice per year (June & November) Using LINPACK Benchmark code (unraveling direct polynomial math condition aX = b ) Organized by overall HPC specialists, computational researchers, producers, and the Internet people group Homepage: http://www.top500.org

Slide 14

TOP500:November 2007 TOP 5, Units in GFLOPS (=1024 MGLOPS) Rank Installatio Site/Year Manufacturer Computer/Procs R max R top 1 DOE/NNSA/LLNL United States/2007 BlueGene/L eServer Blue Gene Solution/212,992, IBM 478,200 596,378 2 Forschungszentrum Juelich (FZJ) Germany/2007 JUGENE - Blue Gene/P Solution IBM 65,536 167,300 222,822 3 SGI/New Mexico Computing Applications Center (NMCAC) United States/2007 SGI Altix ICE 8200, Xeon quad center 3.0 GHz , SGI 14,336 126,900 172,032 4 Computational Research Laboratories, TATA SONS India/2007 EKA - Cluster Platform 3000 BL460c, Xeon 53xx 3GHz, Infiniband Hewlett-Packard, 14,240 117.900 170,800 5 Government Agency Sweden/2007 Cluster Platform 3000 BL460c, Xeon 53xx 2.66GHz, Infiniband Hewlett-Packard, 13,728 102,800 146,430 36 University of North Carolina United States/2007 Topsail - PowerEdge 1955, 2.33 GHz, Cisco/Topspin Infiniband , Dell, 4160 28,770 38821.1

Slide 15

TOP500: June 2008 Rmax and Rpeak qualities are in TFlops. Control information in KW for whole framework

Slide 16

TOP500 History of UNC-CH Entry

Slide 17

Shared/Distributed-Memory Architecture CPU M BUS NETWORK MEMORY Distributed memory - every processor has it\'s own nearby memory. Must do message going to trade information between processors. (illustrations: Baobab, the new Dell Cluster) Shared memory - single address space. All processors have entry to a pool of shared memory. (illustrations: Chastity/breeze, upbeat/yatta, cedar/cypress, sunny) Methods of memory get to : Bus and Crossbar

Slide 18

What is a Beowulf Cluster? A Beowulf framework is an accumulation of PCs developed from product off-the-rack equipment segments interconnected with a framework range system and arranged to work as a solitary unit, parallel figuring stage (e.g., MPI), utilizing an open-source organize working framework, for example, LINUX . Primary segments: PCs running LINUX OS Inter-hub association with Ethernet, Gigabit, Myrinet, InfiniBand, and so forth. MPI (message passing interface)

Slide 19

LINUX Beowulf Clusters

Slide 20

What is Parallel Computing ? Simultaneous utilization of various processors to process information Running similar program on numerous processors. Running numerous projects on every processor.

Slide 21

Advantages of Parallelization Cheaper , regarding Price/Performance Ratio Faster than identically costly uniprocessor machines Handle more serious issues More adaptable : the execution of a specific program might be enhanced by execution on a huge machine More dependable : in principle if processors come up short we can just utilize others

Slide 22

Catch: Amdahl\'s Law Speedup = 1/(s+p/n)        

Slide 23

Parallel Programming Tools Share-memory design OpenMP Distributed-memory engineering MPI, PVM, and so on

Slide 24

OpenMP An Application Program Interface (API) that might be utilized to unequivocally coordinate multi-strung, shared memory parallelism What does OpenMP remain for? Open determinations for Multi Processing by means of synergistic work between invested individuals from the equipment and programming industry, government and the scholarly world. Involved three essential API segments: Compiler Directives Runtime Library Routines Environment Variables Portable: The API is indicated for C/C++ and Fortran Multiple stages have been actualized including most Unix stages and Windows NT Standardized: Jointly characterized and supported by a gathering of significant PC equipment and programming sellers Expected to end up an ANSI standard later???

Slide 25

OpenMP Example (FORTRAN) PROGRAM HELLO INTEGER NTHREADS, TID, OMP_GET_NUM_THREADS , + OMP_GET_THREAD_NUM C Fork a group of strings giving them their own particular duplicates of factors !$OMP PARALLEL PRIVATE(TID) C Obtain and print string id TID = OMP_GET_THREAD_NUM() PRINT *, \'Hi World from string = \', TID

Recommended
View more...