Approximate Computing (6 CP, 2V+3Ü)
This course is given in English and starts on Thursday, April 16, at 11:15 hours in room D2.
Subject and Goal
Approximate Computing is an emerging paradigm that trades-off computational accuracy for a significant reduction in energy, execution time, or chip area. This research-oriented course introduces to the field of Approximate Computing and its most remarkable aspects, and explains the main methods used to implement efficient computing systems by reducing accuracy. The course discusses approximations at all levels of a computing system, from applications down to hardware technologies. The list of topics includes:
- Introduction and motivation for approximate computing
- Approximation at the application/algorithm level
- Programming languages/compilers for approximate computing
- Approximate microarchitectures
- Synthesis of approximate circuits
- Inexact arithmetic components and performance optimization via accuracy trade-offs
- Approximation techniques at the technology level
To get a first impression please check out the introduction slides. In exercise/tutorial sessions the efficiency of these techniques in various domains are examined, including deep learning and digital signal processing.
Who Should Take this Course?
This is an elective course for students of the Master programs Computer Science and Computer Engineering. There are no formal prerequisites for taking this course. However, since this is an advanced Master-level course with a strong focus on current research, a solid background in micro/nano-electronics, computer architecture, and algorithms is helpful.
Materials
As e-learning platform we use PANDA, where lecture slides, exercise sheets, lab instructions and further materials will be made available.