In
order to be competitive in the computer science field, it’s imperative
to understand the basic building blocks of a modern computer and how
they directly impact the speed and efficiency of a program. Whether you
work with embedded systems, mobile computer-based systems, or cloud
systems, performance and energy efficiency are key drivers of usability
and competitiveness of computerized products.
In this course, you will learn how to design modern multicore-based
computers, and how the design choices you make affect performance and
energy consumption. You will explore design principles governing modern
microprocessors, such as pipelining and cache memories, as well as
methods for determining the impact of your design on execution time and
energy efficiency.
These skills can make a difference for practicing engineers for the
purpose of building highly competitive products. Take, for instance, a
smartphone with limited battery capacity. By adding value to end users
through new or improved functionality, this can lead to significantly
shorter operation time between battery charges, thus utilizing the
already limited resources of a smartphone far more efficiently.
With this skillset, you can become an expert in computer system
performance and energy efficiency - knowledge that is in high demand
when designing computerized embedded products. With trends towards IoT
(Internet of Things), autonomous systems and mobile computers, such a
skillset will be critical in a career in systems engineering.
This course is derived from a Chalmers senior undergraduate course in computer system design.