0% found this document useful (0 votes)
9 views

Lecture 01 - Computer Abstractions and Technology

Presentaciones universitarias profesionales de Arquitectura de Ordenadores en ingles

Uploaded by

guarrosbaratos
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Lecture 01 - Computer Abstractions and Technology

Presentaciones universitarias profesionales de Arquitectura de Ordenadores en ingles

Uploaded by

guarrosbaratos
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

Lecture 1

Computer Abstractions
and Technology (Part I)
§1.1 Introduction
The Computer Revolution
n Progress in computer technology
n Underpinned by Moore’s Law
n Makes novel applications feasible
n Computers in automobiles
n Cell phones
n Human genome project
n World Wide Web
n Search Engines
n Computers are pervasive

Lecture 1 — Computer Abstractions and Technology — 2


Classes of Computers
n Desktop computers
n General purpose, variety of software
n Subject to cost/performance tradeoff
n Server computers
n Network based
n High capacity, performance, reliability
n Range from small servers to building sized
n Embedded computers
n Hidden as components of systems
n Stringent power/performance/cost constraints

Lecture 1 — Computer Abstractions and Technology — 3


The Processor Market

Lecture 1 — Computer Abstractions and Technology — 4


What You Will Learn
n How programs are translated into the
machine language
n And how the hardware executes them
n The hardware/software interface
n What determines program performance
n And how it can be improved
n How hardware designers improve
performance
n What is parallel processing
Lecture 1 — Computer Abstractions and Technology — 5
Understanding Performance
n Algorithm
n Determines number of operations executed
n Programming language, compiler, architecture
n Determine number of machine instructions executed
per operation
n Processor and memory system
n Determine how fast instructions are executed
n I/O system (including OS)
n Determines how fast I/O operations are executed

Lecture 1 — Computer Abstractions and Technology — 6


§1.2 Below Your Program
Below Your Program
n Application software
n Written in high-level language
n System software
n Compiler: translates HLL code to
machine code
n Operating System: service code
n Handling input/output
n Managing memory and storage
n Scheduling tasks & sharing resources
n Hardware
n Processor, memory, I/O controllers

Lecture 1 — Computer Abstractions and Technology — 7


Levels of Program Code
n High-level language
n Level of abstraction closer
to problem domain
n Provides for productivity
and portability
n Assembly language
n Textual representation of
instructions
n Hardware representation
n Binary digits (bits)
n Encoded instructions and
data

Lecture 1 — Computer Abstractions and Technology — 8


§1.3 Under the Covers
Components of a Computer
The BIG Picture n Same components for
all kinds of computer
n Desktop, server,
embedded
n Input/output includes
n User-interface devices
n Display, keyboard, mouse
n Storage devices
n Hard disk, CD/DVD, flash
n Network adapters
n For communicating with
other computers

Lecture 1 — Computer Abstractions and Technology — 9


Anatomy of a Computer

Output
device

Network
cable

Input Input
device device

Lecture 1 — Computer Abstractions and Technology — 10


Anatomy of a Mouse
n Optical mouse
n LED illuminates
desktop
n Small low-res camera
n Basic image processor
n Looks for x, y
movement
n Buttons & wheel
n Supersedes roller-ball
mechanical mouse

Lecture 1 — Computer Abstractions and Technology — 11


Through the Looking Glass
n LCD screen: picture elements (pixels)
n Mirrors content of frame buffer memory

Lecture 1 — Computer Abstractions and Technology — 12


Opening the Box

Lecture 1 — Computer Abstractions and Technology — 13


Inside the Processor (CPU)
n Datapath: performs operations on data
n Control: sequences datapath, memory, ...
n Cache memory
n Small fast SRAM memory for immediate
access to data

Lecture 1 — Computer Abstractions and Technology — 14


Inside the Processor
n AMD Barcelona: 4 processor cores

Lecture 1 — Computer Abstractions and Technology — 15


Abstractions
The BIG Picture

n Abstraction helps us deal with complexity


n Hide lower-level detail
n Instruction set architecture (ISA)
n The hardware/software interface
n Application binary interface
n The ISA plus system software interface
n Implementation
n The details underlying and interface
Lecture 1 — Computer Abstractions and Technology — 16
A Safe Place for Data
n Volatile main memory
n Loses instructions and data when power off
n Non-volatile secondary memory
n Magnetic disk
n Flash memory
n Optical disk (CDROM, DVD)

Lecture 1 — Computer Abstractions and Technology — 17


Networks
n Communication and resource sharing
n Local area network (LAN): Ethernet
n Within a building
n Wide area network (WAN: the Internet
n Wireless network: WiFi, Bluetooth

Lecture 1 — Computer Abstractions and Technology — 18


Technology Trends
n Electronics
technology
continues to evolve
n Increased capacity
and performance
DRAM capacity
n Reduced cost
Year Technology Relative performance/cost
1951 Vacuum tube 1
1965 Transistor 35
1975 Integrated circuit (IC) 900
1995 Very large scale IC (VLSI) 2,400,000
2005 Ultra large scale IC 6,200,000,000

Lecture 1 — Computer Abstractions and Technology — 19


§1.4 Performance
Defining Performance
n Which airplane has the best performance?

Boeing 777 Boeing 777

Boeing 747 Boeing 747

BAC/Sud BAC/Sud
Concorde Concorde
Douglas Douglas DC-
DC-8-50 8-50

0 100 200 300 400 500 0 2000 4000 6000 8000 10000

Passenger Capacity Cruising Range (miles)

Boeing 777 Boeing 777

Boeing 747 Boeing 747

BAC/Sud BAC/Sud
Concorde Concorde
Douglas Douglas DC-
DC-8-50 8-50

0 500 1000 1500 0 100000 200000 300000 400000

Cruising Speed (mph) Passengers x mph

Lecture 1 — Computer Abstractions and Technology — 20


Response Time and Throughput
n Response time
n How long it takes to do a task
n Throughput
n Total work done per unit time
n e.g., tasks/transactions/… per hour
n How are response time and throughput affected
by
n Replacing the processor with a faster version?
n Adding more processors?
n We’ll focus on response time for now…

Lecture 1 — Computer Abstractions and Technology — 21


Relative Performance
n Define Performance = 1/Execution Time
n “X is n time faster than Y”
Performanc e X Performanc e Y
= Execution time Y Execution time X = n

n Example: time taken to run a program


n 10s on A, 15s on B
n Execution TimeB / Execution TimeA
= 15s / 10s = 1.5
n So A is 1.5 times faster than B
Lecture 1 — Computer Abstractions and Technology — 22
Measuring Execution Time
n Elapsed time
n Total response time, including all aspects
n Processing, I/O, OS overhead, idle time
n Determines system performance
n CPU time
n Time spent processing a given job
n Discounts I/O time, other jobs’ shares
n Comprises user CPU time and system CPU
time
n Different programs are affected differently by
CPU and system performance
Lecture 1 — Computer Abstractions and Technology — 23
CPU Clocking
n Operation of digital hardware governed by a
constant-rate clock
Clock period

Clock (cycles)

Data transfer
and computation
Update state

n Clock period: duration of a clock cycle


n e.g., 250ps = 0.25ns = 250×10–12s
n Clock frequency (rate): cycles per second
n e.g., 4.0GHz = 4000MHz = 4.0×109Hz
Lecture 1 — Computer Abstractions and Technology — 24

You might also like