01-intro-v3 - CS(E)6230: HPC Tools and Applications #01:...

Info iconThis preview shows pages 1–8. Sign up to view the full content.

View Full Document Right Arrow Icon
CS(E)6230: HPC Tools and Applications #01: Introduction Jeffrey Vetter
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Computational Science and Engineering Division 2 Outline My background Course Overview A brief history of supercomputing Toward Exascale computing
Background image of page 2
Computational Science and Engineering Division 3 My Background Joint Professor w/ Oak Ridge National Lab Based at ORNL Manage the Future Technologies Group Georgia Tech PI and PD of Keeneland Track 2D GPU based supercomputer PI of NVIDIA CUDA Center of Excellence Various other activies Previous HPC experience Georgia Tech University of Illinois @ Urbana-Champaign Lawrence Livermore National Lab Research Interests HPC Architectures and Software Emerging architectures Performance analysis, prediction, optimization Learn more at http://ft.ornl.gov/~vetter
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Computational Science and Engineering Division 4 Course Overview Graduate level introduction to the area of high- performance computing Both CS majors and for non-CS students with a strong background or interest in computing and/or a strong need for high performance computing in their application domain This course is viable to take for students of varying backgrounds because it uses straightforward course materials also comprehensible to non-CS majors supplements topics' depth with selected research papers
Background image of page 4
Topics 1. A brief history of supercomputing and motivating applications. 2. Overview of HPC architectures and software; key metrics; benchmarks. 3. High-level algorithm design techniques for parallel systems and memory hierarchies 4. Parallel computer architectures, including processors, memory, and networks 5. Basic performance analysis and modeling 6. Algorithmic primitives, e.g., scans, trees, and sorting 7. Parallel programming models, e.g., Pthreads, OpenMP, MPI, Cilk++, PGAS languages, CUDA, OpenCL, domain-specific languages 8. Single-core, single-node performance tuning 9. Compiler-based automatic parallelization 10. Scientific libraries and frameworks 11. Parallel I/O and file systems 12. Debugging 13. Research topics in accelerators (e.g., GPUs), autotuning, modeling assertions, debugging, . .. Computational Science and Engineering Division 5
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Computational Science and Engineering Division 6 Materials Will draw mainly on contemporary HPC materials textbooks research papers user guides Many of these materials are available online and will be distributed in class
Background image of page 6
Recommended Textbooks There are no required textbooks for the course. However, I highly recommend picking up copies of the following books Introduction to Parallel Computing (2nd ed.), by Ananth Grama, Anshul Gupta, George Karypis, and Vipin Kumar. Parallel Computer Architecture: A Hardware/Software Approach, by David E.
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 8
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 31

01-intro-v3 - CS(E)6230: HPC Tools and Applications #01:...

This preview shows document pages 1 - 8. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online