You are here

Welcome to the world of computer system designs

1 June, 2015 - 16:41

Let's begin with a little drama. Mr ProudOfIt is telling Mr NoClue about his new computer.

I have heard this type of conversation many times over the years. It is true that a faster processor improves the performance of a computer system. However, can we estimate how much better the performance will be? Will Mr ProudOfIt really experience a 6X difference in performance with his new system? Should Mr NoClue buy a new and faster computer if all he wants to do is to download his uncle's photo album faster? It is possible, however, that a 6X faster processor might not be able to improve the surfing experiences of Mr ProudOfIt and Mr NoClue dramatically. However, what would be the reasons behind this conclusion?

This course is all about computer system designs — not to design a completely new and different computer system per se, but an in-depth study of various design techniques used in today’s modern computer systems. No book or course can cover the entire design space of computer technologies, and certainly no instructor can teach you how to design a completely new and technologically innovative computer system. After all, inventions and innovations are something no one can teach. The aim of this course is to teach and show you the various design techniques employed in today’s computers and their individual components — the fundamental concepts, technical issues and tradeoffs, so that you can effectively and scientifically analyse and compare the performance of various computer systems that are built today (and in the future).

Precisely what do we mean when we say computer X performs better than computer Y? Before we can effectively and scientifically analyse and compare the performance of computer systems, first we need to learn how to measure the performance of a computer system, which is the focus of the rest of this unit. In this unit, you will study various scientific tools that are used in the field of computer science to measure the performance of a computer system. You will also study many different metrics that are used to indicate different types of performance. And at the end of the unit, a few fundamental concepts related to computer performance will be introduced to you. These concepts are important for understanding and analysing the performance of all computers and their components’ designs, and will be used throughout the rest of the course. In the remainder of this section, we will briefly review the evolution of computer technologies first, followed by revisiting the Mr ProudOfIt and Mr NoClue dilemma. An overview of the course will be presented at the end of the section.