CA Introduction
CA Introduction
CA Introduction
❑ Future
l Tailored medical care based on individual genome.
l Super-human: transfer human’s brain to a mechanical body
(robot) for interstellar traveling (The Matrix franchise, Michio
Kaku, Physics of the Future 2011 and The Future of the Mind
2015).
l …many more
❑ Computer performance
l How to evaluate performance
l Basic techniques to improve computer performance.
❑ Server
l Network based
l High capacity, performance, reliability
l Range from small servers to building sized
❑ Embedded computers
l Hidden as components of systems
l Stringent power/performance/cost constraints
Embedded
PC
Server
Super computer
IT3030E Fall 2022 12
Price/performance of computer classes
Super $Millions
Mainframe
$100s Ks
Server $10s Ks
Differences in scale,
not in substance Workstation $1000s
Personal $100s
Embedded $10s
IBM System/360
IT3030E Fall 2022 16
A brief history of computers
❑ Later generations: IC and VLSI
❑ Increasing price/performance
❑ Moore’s law
❑ High-level language
l Level of abstraction closer to
problem domain
l Provides for productivity and
portability
❑ Assembly language
l Textual representation of
instructions
❑ Hardware representation
l Binary digits (bits)
l Encoded instructions and
data
IT3030E Fall 2022 21
Hardware/software interface: below your program
❑ Application software
l Written in high-level language (HLL)
❑ System software
l Compiler: translates HLL code to
machine code
l Operating System: service code
- Handling input/output
- Managing memory and storage
- Scheduling tasks & sharing resources
❑ Hardware
l Processor, memory, I/O controllers
❑ datapath +
control =
processor
(CPU)
Memory
Control Input
Datapath Output
[Textbook]
IT3030E Fall 2022 31
2. Computer performance evaluation
❑ What is performance?
❑ A storage system
l How much time to find a file/object?
l How much time to transfer a file?
l How many files can be served simultaneously?
❑ A web server
l How fast a request can be served?
l How many request can be served per second?
performanceX = 1 / execution_timeX
performanceX execution_timeY
-------------------- = --------------------- = n
performanceY execution_timeX
performanceA execution_timeB
-------------------- = --------------------- = n
performanceB execution_timeA
= #-------------------------------------------
CPU clock cycles for a program
clock rate
Instruction_count x CPI
= -----------------------------------------------
clock_rate
4 steps
20 steps
FIGURE 1.18 SPECINTC2006 benchmarks running on a 2.66 GHz Intel Core i7 920.
IT3030E Fall 2022 46
End of chapter 1