Download CS2504, Spring`2007 ©Dimitris Nikolopoulos

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Supercomputer architecture wikipedia , lookup

Abstraction (computer science) wikipedia , lookup

Supercomputer wikipedia , lookup

Computer cluster wikipedia , lookup

ILLIAC IV wikipedia , lookup

Parallel computing wikipedia , lookup

Transcript
CS2504, Spring'2007
©Dimitris Nikolopoulos
CS2504: Computer Organization
Lecture 1: Welcome to CS2504
Instructor: Dimitris Nikolopoulos
(Δημήτρης Νικολόπουλος)
CS2504, Spring'2007
©Dimitris Nikolopoulos
Administrivia


Instructor: Dimitris Nikolopoulos

Office hours: MCB 614, Monday 10.00am-11.30am

217 VTKWII Building, Wednesday 3.00pm-4.30pm

By appointment: [email protected]
TA: Ganesh Narayanaswami

Office hours: TBD

[email protected]
2
CS2504, Spring'2007
©Dimitris Nikolopoulos
Administrivia


Course structure:

Lectures, discussion, some problem solving

10% pop quizzes (always have a notebook), 20%
midterm, 25% final, 50% homework (including
programming and logic design assignments)

Midterm, final, quizzes in class.
Usual honor rules apply

Use common sense

You can not share code or written material

You can share ideas
3
CS2504, Spring'2007
©Dimitris Nikolopoulos
Prerequisites

Familiarity with UNIX (CS 2204)

Data structures and C++ (CS 2605)


Grades C or higher
Fill out forms, honestly
4
CS2504, Spring'2007
©Dimitris Nikolopoulos
Textbook

Patterson and Hennessy, Computer
Organization and Design, 3ed.

Additional material on CD



Software (simulators, etc.)
Practice problems
Course web sites:

http://courses.cs.vt.edu/~cs2504

Make a habit of checking the web site!

http://forum.cs.vt.edu

Curator to be used for homework assignments
5
CS2504, Spring'2007
©Dimitris Nikolopoulos
Assignments






Submitted online via curator
Instructions for file formats, coding rules,
tools etc. will be posted
Primary tools: SPIM, LogicSIM
Late submission penalized by 25% per diem
We do use plagiarism detection tools
Protocol:


Discuss grade with grader (TA or DSN)
If not resolved, discuss further with DSN
6
CS2504, Spring'2007
©Dimitris Nikolopoulos
Assignments

Use common sense:



Assignments are atomic




Take frequent backups
Keep copies of your assignments until they are
graded and any grading issues are resolved
Can't prevent exchange of ideas. Feel free!
Don't exchange code
Do not edit the output! We run the assignments and
we enforce occasional demos
Use reasonable coding principles


Some instructions will be posted.
Use comments, reasonable identation, etc.
7
CS2504, Spring'2007
©Dimitris Nikolopoulos
Reading


Read the book, lectures follow the book
Read lecture notes, come to lectures





Consult frequently with the TA and DSN



Check University policies for attendance
Lectures convey useful insight
Lectures will be posted shortly after class
Reward for bugs in lecture notes
Nice guys, help a lot!
Textbook CD, companion site
Google!
8
CS2504, Spring'2007
©Dimitris Nikolopoulos
Evaluation

Graded on a curve:

100-point scale

Top 10% of class

A, If within 95% of top 10% average

A- 1 point under A, B+ 2 points under A

B 10 points from A, C 20 points etc

Curves may foster some competition, but they also
shield you from unexpected failures in tests and
assignments

Instructor reserves right to tune grading policy
9
CS2504, Spring'2007
©Dimitris Nikolopoulos
Course outline
I. Computers, abstractions and technology
II.Instruction set architecture: talking to the
computer in its own language
III.Arithmetic for computers
IV.Understanding and measuring performance
V.Processor: Datapath and control
VI.Improving performance: pipelines and ILP
VII.Memory hierarchies
VIII.Storage and I/O
IX.Multiprocessors and clusters
10
CS2504, Spring'2007
©Dimitris Nikolopoulos
Introduction
Computers, Abstractions and Technology
11
CS2504, Spring'2007
©Dimitris Nikolopoulos
Computer revolution

Computers in ATMs

Computers in cars

Laptops, palmtops, cell phones

Settop boxes, Sony PS3, Wii

Computers and the web

Computers and scientific revolution

Human genome

Climate change

Nuclear reactions
12
CS2504, Spring'2007
©Dimitris Nikolopoulos
Computers around us

Desktops: one user, at home

Servers: many users, remotely

Supercomputers: highest performance


Embedded computers: computers hidden
inside a box, running one application
Class quiz: Which category has the highest
population on the planet?
13
CS2504, Spring'2007
©Dimitris Nikolopoulos
And the winner is...
14
CS2504, Spring'2007
©Dimitris Nikolopoulos
Quiz set No. 2



How many of you know what a Pentium
processor is?
How many of you know what an ARM
processor is?
How many of you think that they are
carrying an ARM processor in their jackets?
15
CS2504, Spring'2007
©Dimitris Nikolopoulos
Microprocessor sales
16
CS2504, Spring'2007
©Dimitris Nikolopoulos
Below your program

System software

Operating system:
hiding complexities,
managing resources
efficiently

Compiler: translate
high-level languages
into assembly
language instructions
Assembler: translate
assembly instructions
to bit streams

17
CS2504, Spring'2007
©Dimitris Nikolopoulos
A computer from 10 feet
18
CS2504, Spring'2007
©Dimitris Nikolopoulos
A computer from 1 foot
19
CS2504, Spring'2007
©Dimitris Nikolopoulos
Inside a microprocessor
20
CS2504, Spring'2007
©Dimitris Nikolopoulos
Some definitions

Integrated circuit


CPU


Microprocessor
Datapath and control


A large collection of transistors
Arithmetic and instruction logic in the CPU
DRAM

Volatile storage for data and instructions
21
CS2504, Spring'2007
©Dimitris Nikolopoulos
Some definitions

Cache


Non-volatile storage


Disks, tapes and other media for permanent
storage
ISA (instruction set architecture)


Volatile superfast storage for instructions and
data
Abstract interface between hardware and
software: how to talk to a machine correctly
ABI (application binary interface)

ISA plus OS interfaces for talking to devices other
22
CS2504, Spring'2007
©Dimitris Nikolopoulos
Abstracting it away

Computers seen as layers of abstractions:





Each layers provides an interface to access the
computer and hides implementation details from
the layers above it
Example: binary code, instruction set, high-level
programming language, component programming
Simplifies computing tasks, such as programming,
compiling, running programs
CS has been raising the level of abstraction for
almost 50 years
Some indications that this trend may change in the
near future (blurred boundaries)
23
CS2504, Spring'2007
©Dimitris Nikolopoulos
Memory hierarchies


A hierarchy of storage “devices”:

E.g. Cache, DRAM, disk, tapes, the library

Moving down: Lower cost, increased capacity, slower
access time
What makes memory hierarchies work:

The principle of locality


Programs go through phases
A program needs only a portion of its instructions/data
to execute in the time span of a phase

Adjacent data accessed by adjacent instructions

Data is often reused
24
CS2504, Spring'2007
©Dimitris Nikolopoulos
The network



Wasn't even in the CO books until the latest
edition...
Now, a computers without a network
interface may be considered useless!
Networking drives computer evolution in
many ways
25
CS2504, Spring'2007
©Dimitris Nikolopoulos
Moore's law (processors)
26
CS2504, Spring'2007
©Dimitris Nikolopoulos
Moore's law (memories)
27
CS2504, Spring'2007
©Dimitris Nikolopoulos
Moore's law discussion

Many project its end

Some reasons for being pessimistic:



Physical limitations with packaging components in
silicon
Physical limitations with power. Microprocessor
power density is similar to that of nuclear
reactors...
Physical limitations with distance. Signals need
time to travel inside the processor...
28
CS2504, Spring'2007
©Dimitris Nikolopoulos
Moore's law discussion

What is the driving force?

For many years: technology!

Able to package more transistors on a chip
Think of PC ads you've seen in the past. All about
clock-rate...


Think of PC ads you've seen recently. All about
multicore...

So what changed?
29
CS2504, Spring'2007
©Dimitris Nikolopoulos
Staying on Moore's curve


Innovation in the design of microprocessors
has become more important

Instruction-level parallelism


Prediction, speculation
Thread-level parallelism

Better organization of memory hierarchies
System software has become more
important

Optimizing compilers for exotic microprocessors

Parallelism in algorithms and system software
30
CS2504, Spring'2007
©Dimitris Nikolopoulos
Recap

An exciting, rapidly changing field of study:

The computer is ubiquitous



Exponential growth driven by:



You may be carrying 2-3 with you as we speak
May have a few tens of them at home
Technology
Innovation
Technology that changes our lives in ways not seen before:




Google and access to information
The human genome
The $100 laptop
The virtual patient
31