ECE 60827 - Programmable Accelerator Architectures

Course Details

Lecture Hours: 3 Credits: 3

Areas of Specialization:

  • Computer Engineering

Counts as:

Normally Offered:

Each Spring

Campus/Online:

On-campus and online

Requisites:

ECE 56500

Requisites by Topic:

Computer Architecture

Catalog Description:

This class builds on previous knowledge of general-purpose processor design to explore the space of programmable hardware accelerators. Hardware accelerators seek to fulfill the promise of continued performance and energy-efficiency gains in the era of a slowing Moore's law, larger problem sizes and an increased focused on energy-efficiency. These factors have caused hardware acceleration to become ubiquitous in today's computing world and critically important in computing's future. This class will introduce students to the architectures of programmable accelerators. We will delve deeply into the architectures of modern massively parallel accelerators like GPUs, culminating in a course project using an open-source research and development simulator used in academia and industry. General topics in hardware acceleration will be discussed, including but not limited to GPGPU and massively parallel computing, approximate accelerators, reconfigurable hardware and programmable hardware for machine learning.

Required Text(s):

  1. General Purpose Graphics Processor Architecture , Aamodt, T.M., Fung, W.L., & Rogers, T.G, , 2018

Recommended Text(s):

  1. Computer Architecture: A Quantitative Approach , 5th Edition , Hennessey and Patterson
  2. Programming Massively Parallel Processors: A Hands-on Approach , 3rd Edition , Kirk, D.B., & Hwu, W.M.W. , Elsevier, Inc. , 2016

Lecture Outline:

Week Major Topics
1 week General purpose architecture background and the evolution to accelerators Entropy and channel capacity from the detection perspective
2 weeks Programming massively parallel accelerators
1 week Advances in the GPU programming model
3 weeks GPU core design
2 weeks GPU memory system and interconnect
2 weeks CPU/GPU systems and AMD Fusion architecture
1 week Intel Xeon Phi design
1 week Custom and reconfigurable accelerators
2 weeks Case studies on architectures for machine learning

Assessment Method:

Programming assignment, paper reading & class participation, final project