Intel® Parallel Computing Centers

Universities, institutions, and labs that work to optimize open source applications.

Teaching

Intel is working with key academic universities and partners around the world to modernize code and provide publicly available learning materials for the Intel® Xeon Phi™ processor family, Lustre*, and 3D XPoint™ memory. These materials will be developed to educate the high performance computing (HPC) community on modernizing software to run optimally on the next generation of Intel® architecture.


The Intel® Parallel Computing Center

Instructor Allen D. Malony

This center is developing a parallel computing course that focuses on related architecture, hardware and software systems, languages, programming paradigms, algorithms, and theoretical models.


Parallel Computer Architecture and Programming

Instructor Kayvon Fatahalian

This course offers in-depth teaching of the fundamental principles and engineering trade-offs involved in designing modern parallel computing systems, and teaches parallel programming techniques necessary to effectively use these systems.


Introduction to High-Performance Computing (HPC) Clusters

Instructor Steve Jones

This course discusses the fundamentals of what makes up an HPC cluster. Learn how we can take advantage of such systems to solve large-scale problems in a wide range of applications like computational fluid dynamics, image processing, machine learning, and analytics.


High-Performance Computing Lectures

Instructor Tarek El-Ghazawi

This education for engineering and high-performance computing (HPC) focuses on optimization, productivity, locality exploitation, partitioned global address space (PGAS) programming models, and applications.


Parallel Computer Architecture

Instructor Thomas Wenisch

Delve into the foundations of design and programming devices. Explore advancements in parallel architectures, and learn about recent processors and the applications influencing the design of future parallel processors.


Parallel Computation

Instructors Jacob Nelson and Luis Ceze

Learn how to design and implement programs that run on parallel machines. Get introduced to a variety of parallel programming models and styles of parallelism while diving into specific related languages and frameworks, including those designed for big data analytics.


Introduction to Parallel Computing

Instructor Alvin R. Lebeck

Get an introduction to types of parallelism, programming models, environments, parallel hardware, parallel memory systems, application scaling, and topics from recent publications on parallel computing.


Introduction to Parallel Programming

Instructor Laxmikant Kale

Review processor functions, speed at the cost of complexity, programming measurements, tools, and caches. Learn about shared memory programming in a node, multiple-node programming, hybrid programming, and new programming models.


Applications of Parallel Computers

Instructor David Bindel

Learn about the large-scale problems of science on modern computers, how to measure the performance of new or existing simulation codes, and how to run faster and take advantage of features like multicore processors, vector units, and graphics co-processors.


High-Performance Computing Course

Instructor Edmond Chow

This is a course on high-performance computing (HPC) with an emphasis on scientific computing. It is designed to cover computer architecture and networks, parallel algorithms, performance modeling, parallel applications, distributed memory, multithreading, and coprocessor and accelerator programming.


Data Science Lab

Instructors Constantine Caramanis and Alex Dimakis

Data analytics and data science are transforming engineering, healthcare, and scientific discovery. This course will discuss how to use data to build models for prediction and inference, with special emphasis on engineering applications, signal prediction, and modeling.


Parallel Graphics and Simulation

Instructor Bedrich Benes

Learn how to accelerate 2-D and 3-D graphics and simulation programming in C and C++ by implementing it on Intel® Xeon® processors and by using optimizations for OpenMP* and programming.

Computer Graphics Programming

Instructor Bedrich Benes

This course explains vertex buffer objects, shaders programming, and more. It explains a fully object-oriented approach to building real-time applications for interactive displays of large scenes. Learn 2D and 3D graphics programming in C/C++ using OpenGL* and GLSL.