lecture 1 introduction to parallel computing
play

Lecture 1: Introduction to Parallel Computing Abhinav Bhatele, - PowerPoint PPT Presentation

High Performance Computing Systems (CMSC714) Lecture 1: Introduction to Parallel Computing Abhinav Bhatele, Department of Computer Science A little bit about me Ph.D. from the University of Illinois Spent eight years at Lawrence


  1. High Performance Computing Systems (CMSC714) Lecture 1: Introduction to Parallel Computing Abhinav Bhatele, Department of Computer Science

  2. A little bit about me … • Ph.D. from the University of Illinois • Spent eight years at Lawrence Livermore National Laboratory • Started at the University of Maryland in August Abhinav Bhatele, CMSC714 2

  3. Introductions • Name • MS or PhD / Department • Area of research • Why this course? • Something interesting/ unique about yourself Abhinav Bhatele, CMSC714 3

  4. This course is • An introduction to parallel computing • Will cover programming models, architectures, tools, systems issues, algorithms and applications • A qualifying course for MS/PhD • Work expected: • Two programming assignments • Mid-term • Group project (3 students per group) • Classroom participation Abhinav Bhatele, CMSC714 4

  5. The need for high performance computing Drug discovery https://www.nature.com/articles/nature21414 Abhinav Bhatele, CMSC714 5

  6. The need for high performance computing Drug discovery Weather forecasting https://www.nature.com/articles/nature21414 https://www.ncl.ucar.edu/Applications/wrf.shtml Abhinav Bhatele, CMSC714 5

  7. The need for high performance computing Study of the universe Drug discovery Weather forecasting https://www.nature.com/articles/nature21414 https://www.nas.nasa.gov/SC14/demos/demo27.html https://www.ncl.ucar.edu/Applications/wrf.shtml Abhinav Bhatele, CMSC714 5

  8. Why do we need parallelism • Make some science simulations feasible in the lifetime of humans • Either due to speed or memory requirements • Provide answers in realtime or near realtime Abhinav Bhatele, CMSC714 6

  9. What is parallel computing? • Does it include: • Grid computing • Distributed computing • Cloud computing • Does it include: • Superscalar processors • Vector processors • Accelerators (GPUs, FPGAs) Abhinav Bhatele, CMSC714 7

  10. Parallel Architecture • A set of nodes or processing elements connected by a network. https://computing.llnl.gov/tutorials/parallel_comp Abhinav Bhatele, CMSC714 8

  11. Interconnection networks A group with 96 Aries routers • Different topologies for connecting nodes together • Used in the past: torus, hypercube • More popular currently: fat-tree, dragonfly Column all-to-all (black) links Row all-to-all (green) links Two-level dragonfly with multiple groups Inter-group (blue) links (not all links are shown) Torus Fat-tree Dragonfly Abhinav Bhatele, CMSC714 9

  12. Memory and I/O sub-systems • Similar issues for both memory and disks (storage): • Where is it located? • View to the programmer vs. reality • Performance considerations: latency vs. throughput Abhinav Bhatele, CMSC714 10

  13. System software: Programming models • Shared memory/ address-space User code • Explicit: Pthreads Parallel runtime • Implicit: OpenMP • Distributed memory Communication library • Explicit: MPI • Implicit: Task-based models (Charm++) Operating system Abhinav Bhatele, CMSC714 11

  14. Performance and debugging tools • Debugging parallel programs is challenging • Performance analysis and tuning is critical but hard [2016.09.02 08:56:12, 2016.09.02 09:15:42] [0, 3.0 TB] 3000 2000 1000 0 0 1.0 TB 2.0 TB 3.0 TB 06 AM https://computing.llnl.gov/tutorials/totalview/ https://vampir.eu/tutorial/manual/performance_data_visualization Abhinav Bhatele, CMSC714 12

  15. Systems Issues • Operating system noise • Network congestion • Congestion-avoiding routing • Parallel I/O • Job scheduling: • Interference from other jobs Abhinav Bhatele, CMSC714 13

  16. Parallel algorithms and applications • Parallel Matrix Multiplication • Parallel Sorting • N-body calculations • Discrete event simulations Abhinav Bhatele, CMSC714 14

  17. Parallel algorithms and applications • Parallel Matrix Multiplication • Molecular dynamics • Parallel Sorting • Computational cosmology • N-body calculations • Weather and climate modeling • Discrete event simulations • Discrete-event simulation Abhinav Bhatele, CMSC714 14

  18. Questions? Abhinav Bhatele 5218 Brendan Iribe Center (IRB) / College Park, MD 20742 phone: 301.405.4507 / e-mail: bhatele@cs.umd.edu

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend