13 Reduced Instruction Set Computers

Download Report

Transcript 13 Reduced Instruction Set Computers

Measuring Performance
• Early method – MIPS (millions of
instructions per second)
- measured by dividing the number of
instructions executed in running a program
by the time required to run the program.
- Less useful due to :- Different systems often require different number
of instructions to implement a given program.
- MIPS does not provide number of instructions
require to perform a given task.
• CPI/IPC
– Another method of measuring performance
– Cycles per instruction (CPI).
– Calculated by dividing the number of clock
cycles required to execute the program by the
number of instructions executed in running the
program.
– For systems that can execute more than one
instruction per clock cycle, the number of
instructions executed per clock cycle (IPC) is
often used.
– IPC is the reciprocal of CPI .
– The lower CPI the better the system
performance.
Example
A given program consists of a 100instruction loop that is executed 42
times. If it takes 16,000 cycles to
execute the program on a given
system, what are the system’s CPI
and IPC for the program?
Solution
• Total number of instructions executed
= 100 x 42 = 4,200
It takes 16,000 cycle to execute the
program. So CPI = 16,000 / 4200
= 3.81
IPC = 1/CPI or 4,200/16,000. =0.26
IPC and CPI –also rarely used because both are
lack of system’s clock rate information.
• SPEED UP
- Used to describe how the performance of
an architecture changes as different
improvements are made to the architecture.
speedup=(Execution time before)/(Execution time after)
Example : if a program takes 25 seconds to run on one
version of an architecture and 15 seconds to run on a
new version, the overall speedup is 25 seconds / 15
seconds = 1.67.
Amdahl’s Law
• Amdahl’s Law: Make the common case
(frequently used task) faster.
• Overall Speed up of a System =
1/ [( fraction unused) +( fraction used) / ( speed up) ]
• where fraction unused is the fraction of time
for which the task is not in use, fraction used
is the fraction of time for which the task is in
use and speed up is the performance
improvement for the task.
Example
• Suppose that a given architecture does not have
hardware support for multiplication, so
multiplication have to be done through repeated
addition. If it takes 200 cycles to perform a
multiplication in software, and 4 cycles in
hardware, what is the overall speedup from
hardware support for multiplication
a) if a program spends 10 % of its time doing
multiplications?
b) if a program that spends 40 % of Its time
doing multiplications.
Solution
• In both cases, speedup when multiplication hardware is
used
= 200/4 = 50 (ratio of time to do a multiplication without
the hardware to time with the hardware)
a) Overall Speed up of a System =
1/ [( fraction unused) +( fraction used) / ( speed up) ]
= 1/ [( 0.9) +( 0.1) / (50) ] = 1.11
b) Overall Speed up of a System =
= 1/ [( 0.6) +( 0.4) / (50) ] = 1.64
TUTORIAL #2
5.3
5.5
5.6
5.7
6.2
6.3
6.4
6.3
7.3
7.4
7.5
7.6
7.7
Differentiate between DRAM and SRAM and give the
application example for each.
Explain why one type of RAM is considered to be analog and the other
digital.
List the applications of ROM
Differentiate among EPROM, EEPROM and Flash Memory.
Briefly explain how are data written onto a magnetic disk
Briefly explain how are data read from a magnetic disk
Explain the difference between CAV system and a multiple
zoned recording system.
Consider a single-platter disk with the following parameters: Rotation
speed = 7200 rpm; number of tracks on one side of platter=30,000;
number of sectors per track=600; seek time=one ms for every hundred
tacks traversed . Let the disk receive a request to access a random
sector on a random track and assume the head starts at track 0.
Determine the average seek time, average rotational latency, transfer
time for a sector, the total average time to satisfy a request.
List the major functions of I/O Module.
List and briefly define three techniques for performing I/O
What is the difference between memory-mapped I/O and
isolated I/O
Suppose a device interrupt occurs, how does the processor
determine which device issued the interrupt?
When a DMA module takes control of a bus, and while it
retains control of the bus, what does the processor do?
TUTORIAL #2
2.11
2.12
2.13
8.1
8.2
8.3
8.4
8.5
8.10
13.1
13.2
14.1
14.2
17.1
17.6
17.10
A common measure of performance for a processor is the rate at
which instructions are executed , expressed in MIPS. Express the
MIPS rate in terms of the clock rate and CPI.
SEE P/g 46
SEE P/g 46
Define an Operating System
List and briefly define the key services provided by the operating
system
List and briefly define the major type of OS scheduling
Differentiate between a process and a program
What is the purpose of swapping
What is the purpose of a translation look aside buffer?
what are some typical characteristics of RISC organization?
Briefly explain the two basic approaches used to minimize
register- memory operations on RISC machines.
What is the essential characteristic of the superscalar approach
processor design?
Differentiate between the superscalar and superpipelined
approaches.
What is the difference between a hardwired implementation and a
microprogrammed implementation of a control unit?
what is the basic tasks performed by a microprogrammed control
unit?
List some common applications of microprogramming.