performance measurement + analysis

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/19

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

20 Terms

1
New cards

benchmarking

assessing performance of a system in comparison to other systems

2
New cards

MIPS

millions of instructions per second

  • doesn’t factor instruction complexity so can’t be used as a measure

3
New cards

FLOPS

floating point operations per second

  • focuses on a subset of instructions with similar complexity

  • no consensus on what a floating point operation is

4
New cards

synthetic benchmark

program used to measure performance of a system

  • whetstone, linpack, dhrystone

  • easy to optimise as 1 program so not a good benchmark

5
New cards

benchmark suites

test suites rather than 1 program

  • harder to optimise

  • new benchmarks can be swapped in or out

6
New cards

SPEC

standard performance evaluation corporation

  • benchmark suite for programmes with integer/floating point operations

    • CINT2017 (integer operations)

    • CFP2017 (floating point operations)

7
New cards

geometric mean

  • multiple all numbers

  • take root of N (number of elements)

8
New cards

execution cycles equation

execution cycles = clock cycles per instruction x number of instructions

9
New cards

RISC pros

  • decreases execution times by reducing clock cycles per instruction

  • less instructions with a fixed length

    • CU hardwired for maximum speed

    • instructions take 1 clock cycle to execute so easy pipelining

10
New cards

RISC cons

  • long programs

  • only load/store instructions for memory access

  • few addressing modes

  • requires more register so expensive

11
New cards

CISC pros

  • improves performance by reducing number of instructors per program

  • lots of complex instructions with variable length

  • easier to program as fewer instructions needed for complex programs

  • many instructions can access memory with many addressing modes

  • fewer registers needed as fewer operands per instruction

12
New cards

CISC cons

  • CU needs special circuits for interpreting instructions

  • instructions take multiple clock cycles to execute so harder to pipeline

  • parameter passing through memory causes strain on bottleneck

13
New cards

delayed branching

fetch instructions after conditional

14
New cards

3 types of branch predictions

  1. random: just hope right one is picked

  2. static: analyse code at compile time, correct 80% of time

  3. dynamic: keep track of how often each branch is taken during run time

  • needs training time to warm up

15
New cards

4 methods of code optimisation

  1. use appropriate data types

  2. eliminate unnecessary branches by combining conditions

  3. use multiplication over division as simpler computation

  4. profile program by identifying parts that use most processor time

16
New cards

temporal locality

if location has been accessed recently it’ll be accessed again

17
New cards

spatial locality

if location has been accessed recently then nearby locations are likely to be accessed next

18
New cards

sequential locality

if location has been accessed recently then next/previous location is likely to be accessed next

19
New cards

write through cache

when data in cache is changed, write to main memory at same time

  • improves reliability but reduced performance

20
New cards

write back cache

wait for an efficient point in time to write changed cache data to main memory

  • write operations piggy banked onto read operations

  • improved performance of write operations

  • reduces performance for read operations so reduces reliability