227-0085-34L Projects & Seminars: Exploring Future Memory Systems with RAMulator
|Semester||Spring Semester 2021|
|Periodicity||every semester recurring course|
|Language of instruction||English|
|Comment||Only for Electrical Engineering and Information Technology BSc.|
The course unit can only be taken once. Repeated enrollment in a later semester is not creditable.
|Abstract||The category of "Laboratory Courses, Projects, Seminars" includes courses and laboratories in various formats designed to impart practical knowledge and skills. Moreover, these classes encourage independent experimentation and design, allow for explorative learning and teach the methodology of project work.|
|Objective||DRAM is predominantly used to build the main memory systems of modern computing devices. Simulation-based experimental studies are key for understanding the complex interactions between DRAM and modern applications.|
Ramulator is an extensible DRAM simulator providing cycle-accurate performance models for a variety of commercial DRAM standards (e.g., DDR3/4, LPDDR3/4, GDDR5, HBM) and academic proposals. Ramulator has a modular design that enables easy integration of additional DRAM standards and mechanisms. Ramulator is written in C++11 and can be easily integrated to full-system simulators such as gem5.
In this P&S, you will design new DRAM and memory controller mechanisms for improving overall system performance, energy consumption, and reliability. You will extend Ramulator with these new designs and evaluate their performance, energy consumption, and reliability using modern applications. This will be the right P&S for you if you would like to learn about the state-of-the-art memory controller and DRAM designs and their interaction with modern applications. This P&S will also enable you to hands-on simulate and understand the memory system behavior of modern workloads such as machine learning, graph analytics, genome analysis.
Prerequisites of the course:
- Digital Design and Computer Architecture (or equivalent course)
- A good knowledge in C/C++ programming language.
- Interest in making things efficient and solving problems.
- Interest in understanding software development and hardware design, and their interactions.
The course is conducted in English.
Course website: https://safari.ethz.ch/projects_and_seminars/doku.php?id=ramulator