Multi-Core Programming
Course Topics
This course will start with the emergence and inevitability of multi-core paradigm, and discuss its implications. Then we will go over fundamental concepts of concurrent programming, and give a premier of thread programming. The last session will cover some case studies on parallel programming, including stream programming, programming graphics processors, and programming the cell processor. The course will include a lab on programming on the cell processor.
Topics discussed in this course include:
-
The emergence of multi-core architectures
-
Survey of Multi-core Architectures
-
Fundamental concepts of parallel programming
-
Thread Programming
-
Thread Synchronization and cooperative processing
-
Multithreaded Debugging
-
Parallel Programming
-
OpenMP
-
Programming Graphics Multi processors
-
Programming the Cell Multi processor
-
Assignment on programming on the Cell Processor
Instructors
Dr. Aviral Shrivastava joined ASU in 2006, soon after receiving his Ph.D. from University of California, Irvine. Dr. Shrivastava is a well recognized expert in microarchitectures and compilers of embedded processors, with a focus on low-power computing. Dr. Shrivastava heads the Compiler-Microarchitecture Lab at ASU, with a mission to investigate novel compiler, microarchitectural and cooperative compiler-microarchitecture solutions to the challenges faced by embedded system designers and programmers.
Dr. Shrivastava has developed several novel schemes to reduce power consumption of embedded and high performance processors at both the hardware and software levels. His current research has 3 focuses, power-efficient multi-core computing, reliable software on unreliable hardware, and investigating Coarse-grain reconfigurable architectures. His research is funded by NSF, SFAz, Intel, Microsoft Research, and Raytheon Missile Systems.
Dr. Partha Dasgupta joined ASU in 1991. Prior to ASU, he had teaching appointments with Georgia Tech and New York University. He received his Ph.D. in Computer Science from Stony Brook University.
Dr. Dasgupta's core areas of expertise are in Computer Security, Operating Systems and Distributed Computing. His current research focus is the use of cryptography and secure software systems to provide security and dependability of consumer computing. These technologies have the ability to safeguard naive computer users from attacks that attempt to defraud via spoofing, viruses and spam. In addition, he works with software, hardware and networking techniques for enhancement of security and attack resilience. He has significant prior research results and publications in construction of distributed operating systems, high performance systems and secure computing infrastructures.
Dr. Dasgupta also has experience in industrial consulting, training course development and delivery. His research funding has primarily been from NSF and DARPA with smaller grants from Intel, Microsoft and the Consortium for Embedded Systems. He has 20 years of experience with operating systems and 8 years experience with security systems. He is an accomplished teacher and researcher of topics in computer security and distributed computing.
Who Should Attend
This course will be extremely relevant to all software programmers and computer architects. This course is also intended for professionals who seek to acquire the skill-set needed for the next decade. Soon most computing systems will be multi-cores, and multi-core programming will become an irreplaceable part of application development.
This course will provide a global view of the multi-core landscape, equip the student with the fundamentals of concurrent programming, and provide an overview of the main parallel programming paradigms. This course will provide hands-on programming experience on the cell processor to solidify and situate the learning and provide immediately usable skill.
For more information about a custom offering of this program, please contact:
Layla Reitmeier
Coordinator-Professional and Executive Programs
layla@asu.edu
480-965-8515
