COEN6741 - Computer Architecture &...

67
COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of Electrical & Computer Engineering EV16.179 (ext. 3114) [email protected]

Transcript of COEN6741 - Computer Architecture &...

Page 1: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

COEN6741 - Computer Architecture & Design

Introduction

Prof. Sofiene Tahar

Dep. of Electrical & Computer EngineeringEV16.179 (ext. 3114)

[email protected]

Page 2: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Course Objective

Learning about hardware design issues of high performance computer architectures.

Page 3: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Course Prerequesite

Basic knowledge in Computer organization, Digital circuit design, High-level language programming, e.g. C or Java, and Assembly programming, e.g. Itelx86 or MC680xx.

Knowledge of VHDL or Verilog HDL is required for the course project.

Page 4: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Textbook

Computer Architecture:A Quantitative Approach(6th edition)

by

Hennessy (Stanford U.)Patterson (UC Berkeley)

Page 5: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Course Outline

Fundamentals of Quantitative Design & Analysis (Chapter 1)

Instruction Set Principals (Appendix A) Instruction Pipelining (Appendix C) Memory Hierarchy Design (Appendix B &

Chapter 2) Instruction-Level Parallelism (Chapter 3) Data-Level Parallelism (Chapter 4) Thread-Level Parallelism (Chapter 5)

Page 6: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

The Processor Market

Page 7: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

The Computer Revolution Progress in computer technology

Underpinned by Moore’s Law Makes novel applications feasible

Computers in automobiles Cell phones Human genome project World Wide Web Search Engines

Computers are pervasive

§1.1 Introduction

Page 8: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

The Processor Market

Page 9: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Cell Phones!!

Page 10: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Cell Phones!!

Page 11: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Classes of Computers Desktop computers

General purpose, variety of software Subject to cost/performance tradeoff

Server computers Network based High capacity, performance, reliability

Embedded computers Hidden as components of systems Stringent power/performance/cost constraints

Supercomputers

Page 12: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Below Your Program Application software

Written in high-level language System software

Compiler: translates HLL code to machine code

Operating System: service code Handling input/output Managing memory and storage Scheduling tasks & sharing resources

Hardware Processor, memory, I/O controllers

§1.2 Below

Your Program

Page 13: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Levels of Program Code High-level language

Level of abstraction closer to problem domain

Provides for productivity and portability

Assembly language Textual representation of

instructions Hardware representation

Binary digits (bits) Encoded instructions and

data

Page 14: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Components of a Computer Same components for

all kinds of computer Desktop, server,

embedded Input/output includes

User-interface devices Display, keyboard, mouse

Storage devices Hard disk, CD/DVD, flash

Network adapters For communicating with

other computers

§1.3 Under the C

overs

The BIG Picture

Page 15: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Networks Communication and resource sharing Local area network (LAN): Ethernet

Within a building Wide area network (WAN: the Internet Wireless network: WiFi, Bluetooth

Page 16: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Storage Volatile main memory

Loses instructions and data when power off

Non-volatile secondary memory Magnetic disk Flash memory Optical disk (CDROM, DVD)

Page 17: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Anatomy of a Computer

Output device

Input device

Input device

Network cable

Page 18: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Opening the Box

Page 19: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

The Processor AMD Barcelona: 4 processor cores

Page 20: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Computer

Main Memory

InputOutput

SystemsInterconnection

Peripherals

Communicationlines

CentralProcessing Unit

Computer

Inside the Computer

Page 21: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Computer Arithmeticand Login Unit

ControlUnit

Internal CPUInterconnection

Registers

CPU

I/O

Memory

SystemBus

CPU

Inside the Processor (CPU)

Page 22: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

CPU

ControlMemory

Control Unit Registers and Decoders

SequencingLogic

ControlUnit

ALU

Registers

InternalBus

Control Unit

Inside the Control Unit

Page 23: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Technology Trends Electronics

technology continues to evolve Increased capacity

and performance Reduced cost

Year Technology Relative performance/cost1951 Vacuum tube 11965 Transistor 351975 Integrated circuit (IC) 9001995 Very large scale IC (VLSI) 2,400,0002005 Ultra large scale IC 6,200,000,000

DRAM capacity

Page 24: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of
Page 25: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of
Page 26: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of
Page 27: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of
Page 28: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Eniac

Page 29: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Eniac (find the OS?)

Page 30: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Eniac (find the Programmer?)

Page 31: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Integrated Circuits: wafer (564 dies)Drawing single-crystal

Si ingot from furnace…. Then, slice into wafers and pattern it…

Page 32: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

In the beginning Intel 4004 (4-bit)

Page 33: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

ACA H.Corporaal 35

Intel 8080 (8-bit)

Page 34: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Intel 8086 (16-bit)

Page 35: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Motorola 68000 (32-bit)

Page 36: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Pentium 4 (64-bit)

Page 37: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Pentium 4 chip breakdown

Page 38: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of
Page 39: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Technology Trends

Page 40: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Intel IA-64 / ItaniumExplicit Parallel Instruction Computer IA-64 Implementations: Merced (2001), McKinley (2002),

Montecite (2 core, 2006), Tukwila (4-core 2009), Poulson(Q4, 2009, 8-core)

architecture is now called Itanium

Page 41: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

ACA H.Corporaal(2002)

Page 42: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

1/10/2018ACA H.Corporaal

Page 43: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Tukwila 4 core Itanium, 2009

Page 44: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Intel Dunnington 6-core

Page 45: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

How further?

Page 46: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Supercomputers IBM cluster 6480 nodes with

Dual core Opteron 1.8 GHz 2 * PowerXCell 8i 3.2 GHz (12.8 GFlops)

Infiniband connection fabric (16 Gbit/s per link) FAT tree interconnect

100 Tbyte DRAM memory 216 I/O nodes 2.35 MW power MPI programming Size: 296 racks, 550 m2 This is huge !!

Page 47: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

BlueGene/L IBM Based on ASIC with PowerPC 440, 700 Mhz, each 2.8

GFlops 105,496 nodes 3D Torus interconnect for p2p communication +

Collective network

rack

3D-torus

Complete system

Page 48: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Data Center (IBM)

Page 49: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Processor card:one 4-processor chip13.6 GFlops2-4 GB

Rack:32 Node Cards13.9 TF/s2-4 TB

System:256 racksupto 1PB3.56 PFlops

Node card:32 processor cards64-128 GB435 GFlops

ASIC:13.6 Gflops8 MB EDRAM

2009: BlueGene/P

Page 50: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

208M trans 850 MHz 16W 90nm

52

BlueGene/PASIC

Page 51: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

BlueGene/L Node board 16 cards with 2

ASICs each 8 GB 180 Gflop

Page 52: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

BlueGene/P node card

Page 53: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

BlueGene/P rack

Page 54: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Processor card:one 4-processor chip13.6 GFlops2-4 GB

Rack:32 Node Cards13.9 TF/s2-4 TB

System:256 racksupto 1PB3.56 PFlops

Node card:32 processor cards64-128 GB435 GFlops

ASIC:13.6 Gflops8 MB EDRAM

2009: BlueGene/P

Page 55: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Can we match the human brain ??? Performance = 100 Billion (10^11) Neurons *

1000 (10^3) Connections/Neuron * 200 (2 * 10^2) Calculations Per Second Per Connection = 2 * 10^16 Calculations Per Second

Memory = 100 Billion (10^11) Neurons * 1000 (10^3) Connections/Neuron * 10 bytes (information about connection strength and adress of output neuron, type of synapse) = 10^15 bytes = 1 PB = 1000 TB

How far off are we?

Page 56: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Blue brain research Software replica of a

column of the neocortex 85% of brains total mass required for language,

learning, memory and complex thought

the essential first step to simulating the whole brain

Next: include circuitry from other brain regions and eventually the whole brain.

Page 57: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Incredible Computer Ads!

Page 58: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

RAM Card!

Page 59: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

HD Monitor!

Page 60: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Mobile Phone!!

Page 61: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Mobile Phones!!

Page 62: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Mobile Phones!!

Page 63: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

System-on-Chip (SOC)

HardwareSoftware

Microprocessors

ASIC

Analog Circuit

Sensor

High-speed electronics

Embedded Memory

DSP

Network

Page 64: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

System-on-Chip (SOC)

Page 65: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

68

At The End

What you should have understood after taking COEN6741

Page 66: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

At The End

The actualprocessor size

The technology behind multiprocessor chips

Page 67: COEN6741 - Computer Architecture & Designusers.encs.concordia.ca/~tahar/coen6741/notes/COEN6741...COEN6741 - Computer Architecture & Design Introduction Prof. Sofiene Tahar Dep. of

Thank You and Good Luck!