CSE 6230 (also CS 6230) Fall 2013 T&Th 4:30–6p Klaus Advanced Computing Building, Room 1443 |
High-Performance
Computing: Tools and Applications.
The goal of this course is to give students hands-on experience with programming high-performance computer systems, from single-processor multicore platforms up to large-scale distributed memory multi-CPU/GPU systems. In contrast to CSE 6220: Intro to HPC, which emphasizes the foundations of parallel algorithms, this course focuses on practical aspects of programming tools, performance analysis, and performance tuning, both with respect to parallelism and memory hierarchies. |
CSE 6220 / CS 4225 Spring 2013 T&Th 3–4:30p Klaus Advanced Computing Building, Room 2443 |
Introduction to High-Performance Computing.
The goal of this course is to give you solid foundations for developing, analyzing, and implementing parallel and locality-efficient algorithms. This course focuses on theoretical underpinnings, in contrast to CSE 6230: HPC Tools & Apps, which emphasizes deep, hands-on, low-level programming experience. To give a practical feeling for how algorithms map to and behave on real systems, we will supplement algorithmic theory with hands-on exercises on modern HPC systems, such as Cilk Plus or OpenMP on shared memory nodes, CUDA for graphics co-processors (GPUs), and MPI and PGAS models for distributed memory systems. |
CSE 6230 (also CS 6230) Fall 2012 T&Th 4:30–6p Klaus Advanced Computing Building, Room 2443 |
High-Performance
Computing: Tools and Applications.
The goal of this course is to give students hands-on experience with programming high-performance computer systems, from single-processor multicore platforms up to large-scale distributed memory multi-CPU/GPU systems. In contrast to CSE 6220: Intro to HPC, which emphasizes the foundations of parallel algorithms, this course focuses on practical aspects of programming tools, performance analysis, and performance tuning, both with respect to parallelism and memory hierarchies. |
CS 4225 Spring 2012 MWF 10–11a Clough, Room 131 |
Intro to High-Performance Computing.
The goal of this course is to help students become fluent in the fundamentals of high-performance computing, through a mix of theory and practice that covers performance analysis, the design of parallel and I/O-efficient algorithms, basics of parallel machine architectures, and hands-on programming in both shared and distributed memory models. This semester, the instructors will use peer instruction and hands-on labs and projects to facilitate fluency and understanding. |
CSE 6230 (also CS 6230) Fall 2011 T&Th 9:30–11a Instructional Center, Room 113 |
High-Performance
Computing: Tools and Applications.
The goal of this course is to give students hands-on experience with programming high-performance computer systems, from single-processor multicore platforms up to large-scale distributed memory multi-CPU/GPU systems. In contrast to CSE 6220: Intro to HPC, which emphasizes the foundations of parallel algorithms, this course focuses on practical aspects of programming tools, performance analysis, and performance tuning, both with respect to parallelism and memory hierarchies. |
CSE 6730 / CS 4335 Spring 2011 M&W 4:30–6p Klaus Advanced Computing Building, Room 2447 Co-Instructors: Richard Fujimoto, Richard Vuduc |
Modeling and Simulation: Fundamentals and Implementation.
This course will provide students the necessary skills to
formulate conceptual and mathematical models of systems, to
transform these models into efficient simulation software,
and to apply the resulting simulator to attacking
contemporary problems in science and engineering. Students
will learn the basic underlying principles behind simulation
models, and develop a conceptual and practical understanding
of data structures, algorithms, software, mathematics, and
best practices concerning the development of both the
domain-specific simulation model as well as the underlying
domain-independent simulation engine and algorithms. The course is structured around a problem-based learning approach. This means the course is focused on solving specific, challenge problems. Students will learn course topics while attempting to solve these problems. They will be required to identify and acquiring the necessary knowledge and skills in the context of these problems. The problem-based learning approach is meant to emulate how modeling and simulation is applied in practice—as a problem solving methodology rather that simply demonstrating mastery of basic skills conveyed through lectures and course readings. Note: The course website is hosted on T-Square, and is accessible only to students enrolled in the course. |
CSE 8803-HPC Fall 2010 T&Th 9:30–11a Architecture (East), Room 309 |
Hot Topics in Parallel Computing.
This course is a graduate-level seminar that surveys current
topics in high-performance parallel computing, including new
developments in parallel algorithms, programming models,
compilers, run-time systems, architectures, applications,
software engineering, performance analysis and tuning. There are no formal lectures. Instead, students read approximately 2-4 research papers each week and lead in-class discussions. The course culminates in a major term project, which is expected to be at the level of a research conference paper submission. Note: Access to the course website is by invitation only, and intended for use by students enrolled in the course or approved auditors. |
CS 4225 Spring 2010 M/W/F 10–11a College of Computing Building (CCB), Room 102 |
Introduction to High-Performance Computing. The goal of this course is to provide an introduction to the algorithmic and software tools and techniques needed to implement effective, high-performing programs on modern parallel computing systems. The course emphasizes algorithms, programming models for shared memory architectures. Students are expected to complete several hands-on assignments. |
CSE 6230 (also CS 6230) Fall 2009 T&Th 12–1:30p Klaus Advanced Computing Building, Room 2447 |
High-Performance Computing: Tools and Applications. The goal of this course is to provide a graduate-level introduction to high-performance parallel, distributed, network computing. The emphasis is on a survey of current trends in parallel computer architectures, programming models (compilers, languages, and libraries), and systems (operating systems and I/O). The course includes a number of hands-on assignments and a final project. |
Optimizing algorthms for the memory hierarchy. Feb. 18&20, 2009 |
Part 1: Theoretical foundations (PDF; 1.3 MB) Part 2: Cache architectures (PDF; 2.9 MB) I presented these slides as guest lectures for Prof. George Biros' HPC class (Spring 2009). |
CS 4643 / MATH 4641 Spring 2009 M&W 4:30–6p Lamar Allen Sustainable Education Bldg., Rm. 110 |
Numerical Analysis II. The goal of this course is to introduce you to some of the modern numerical methods for solving ordinary and partial differential equations. We will be particularly interested in the intersections between the theory of numerical analysis and ideas from computer science, including the effects of finite-precision arithmetic and parallel computing. The course follows CS 4803 / MATH 4640: Numerical Analysis I, which was last offered in Fall 2008 by Prof. Haesun Park [link]. |
CSE 6230 (also CS 6230) Fall 2008 T&Th 12–1:30p College of Computing Bldg., Room 52 |
High-Performance Computing: Tools and Applications. The goal of this course is to provide a graduate-level introduction to high-performance parallel, distributed, network computing. The emphasis is on a survey of current trends in parallel computer architectures, programming models (compilers, languages, and libraries), and systems (operating systems and I/O). The course includes a number of hands-on assignments and a final project. |
Georgia Tech Summer CRUISE Program June 6, 2008 |
Talk: Parallel programming models This talk is an introductory survey to some of the programming models used in high-performance computing today. |
CSE 8803 PNA Spring 2008 T&Th 9:35–10:55a Mol. Sci. Engr. Bldg., Room G011 |
Parallel numerical
algorithms. This course surveys parallelization
techniques and issues for core numerical algorithms in
computational science, including dense and sparse linear
algebra computations, numerical solution of ordinary and
partial differential equations, signal processing, numerical
optimization, and particle simulations. About 2/3 of the
course will be devoted to fundamental techniques; the
remaining 1/3 will cover current research, with guest
lectures on novel algorithms and the interactions between
algorithms and machine architectures, among other
topics. Students will complete a collaborative term
project. The course is open to graduate and advanced undergraduate students, and students in all science and engineering disciplines are encouraged to attend. Some exposure to numerical algorithms (e.g., CS 8803 NMC) and/or basic parallel programming is desirable. |