CMSC 818P (Spring 2013)




Dr. Jeff Hollingsworth
4155 AV Williams
(40) 5-2708

Office Hours:
    Tu/Th 10:45-11:30





Class URL: You are expected to check the class web page on a regular basis (at least twice weekly).



The next big challenge in high-end computing is exascale computation. Exascale computation requires that a single computer perform 10^18 operations per second (often an operation means a floating point arithmetic operation, but can also mean integer operations or data movement operations). This level of performance is nearly 100 times the largest computer in the world today. In addition to the goal of pure performance, the exascale effort in the United States requires that such a computer not use more than 20 Megawatt/hr of electricity (the world's largest computer currently uses about 8 Megawatts/hr).

Meeting the goals of computing at this level may require major changes in how computers work. This course will look at those challenges and the potential changes to computers that might be required to meet them. We will also briefly review the path that led to peta-scale computing (10^15 operations/sec) and the claims that we would need radically different computers to get there (we didn't). What is or is not different about exascale?



To understand what will be required to get to Exascale computing, and the lessons to be learned from Petascale computing


Prerequisites: CMSC412, CMSC411 (or equivalent classes)


Topics Covered (in approximately the order we will cover them):

·  Power and Energy Optimization including using dark silicon

·  Reduced hardware reliability to improve power utilization

·  Novel Architectures including streaming processors

·  Advanced compiler techniques for heterogeneous architectures

·  Novel approaches to parallelism to reduce communication and synchronization

·  Use of mixed precision algotihms to enhance performance and power utilization

·  Tools to optmization performance and energy consumption


Required Course Text:

Papers from the reading list


Term Projects:

The class will include term projects to investigate some aspect of exascale computing in more depth. The projects are intended to be “mini-research” projects.  The project will also include a written and oral reports to convey what you have learned.



The class is offered in two credit and three credit variations.  The weighting of work depends on the number of credits you signed up for.


For Three Credits:

Classroom participation







For Two Credits:

Classroom participation



Classroom participation includes emailing answers to questions raised before or during class.