L1: Intro Flashcards
Why do we put programs in parallel ? (3 : 9)
To solve bigger problems ( More complex, more accurate, more realistic).
To solve more problems (faster).
To reduce Power Consumption (cheaper).
How was serial processing increased? (1: 10)
Moores Law
What is Moores Law (1: 11)
Number of transistors on chip double every 2 years
Consequences of Moores Law (2 : 13)
Transistor Count ( number of transistors on chip)
- Deeper instruction pipe-lining, super-scalar processor
- More operations per time
- Perform more complicated instructions
Transistor clock speed (clock frequency, clock rate)
- Speed On/Off
- Smaller
- Short critical path
- Quicker charging/ Discharging
-Faster Clock
What is the frequency scaling equation (1 : 14)
Run time = Instruction/ Program * cycles/ Instruction * Time/cycle
What does an increase in frequency do? (1 : 14)
Decrease in run time
Power Consumption equation? ( 1 : 15)
P = C x V^2 X F
Increasing F requires increasing __ for a given transistor size ( Fill in blank) ( 1 : 15)
Voltage
P is proportional to F^3
What type of parallel processing do humans do? ( 1 : 18)
Team Work
What is Latency ? ( 1 : 19 )
Being Fast at the job.
Eg. Performance of aircraft is 100 times better than ship
What is throughput? (1: 19)
Quantity - More tasks being completed, the better ( Bandwidth)
Eg. Performance of ship is 10 times better than aircraft
Features of a CPU ( 4 : 20 )
- Good for low latency computations
- Large Caches (Data access) and control unit ( out of order execution)
- Fewer ALUs
- Good for real time Apps
Features of a GPU (4 : 20)
- Data parallel and high throughput
- Smaller caches
- More transistors dedicated to computations
- Good if enough work to hide latency limitation
What is Open CL (4 : 26)
- C++
- Library based
- Vendor neutral
- Heterogeneous Computing (CPU/GPU/FPGA)