ILP Flashcards
What does ILP stand for?
instruction level parallelism
How do data dependencies affect the execution time of a program?
RAW (true) dependencies will be a limiting factor for the CPI, even if the CPU can perform everything else perfectly. More dependencies chains == higher CPI
What is a false dependency?
WAR and WAW - these are false because they only exist because we’re using the same registers.
What are architectural registers?
registers that the programmer compilers use (R1, R2, etc)
What are physical registers?
all the places a value could be stored (not necessarily registers)
What is register renaming?
Renaming architectural registers to a physical location where the data is stored. We use a Register Allocation Table (RAT) - maps architectural registers to physical registers
What is ILP?
A property of the program, independent of the processor. It is the IPC if the processor had infinite resources. IPC >= ILP
How do you compute the ILP?
Rename the registers (on paper or your head) and execute / compute the instructions / cycles