500E-12 * 60,000 = 30,000,000E-12 = 30E-6 and cycle count cannot have units of time. We can't have 30ps instructions, only a number of instructions. In this case, we have a total of 30,000 instructions, but some instructions take 1 cycle, some 7. It wouldn't make sense to say, "I have 45 s instructions." Only, "I have 45 instructions, which take X ms to run."
Isn't it for the last question, we have to compare between 3 processors? Processor A with program 1, Processor A with program 2 and Processor B. So in that case Processor A with program 1 will be the fastest?
There are only two processors in the problem - A & B There are two programs. The last question asks to compare between A & B using Program 2 as the benchmark.
This is from given information in the problem statement -- third sentence of the first paragraph. Floating point instructions are more complicated so they take more time (and thus more cycles).
In oscillations, period is always the reciprocal of the frequency. (T = 1/f) Processor A is running at 2.0 GHz (2,000,000,000 Hz). One divided by that number is 500 x 10^-12 sec.
That's Hennessey & Patterson's whole point with the chapter. Performance isn't measured in Hertz. It is measured in time. Time is calculated by the product of cycle time, CPI, and # instruction per program.
@@michaelroditis1952Yes! The program matters a lot. Different programs will give different relative performances. This is a big issue with benchmarking... choosing a representative mix of instructions. The average CPI of a processor is dependent on the mix of instructions (and the underlying CPIs of each instruction class)
can you help with this exercise 1) Please describe what will be done and what result will be in R1 after each instruction R1=10, R2=5, R3=5, M[5] = 23, M[10] =122 Addressing mode instruction What to do R1 content Immediate add R1, #5 Direct add R1, (5) Register direct add R1, R2 Register indirect add R1, (R2) Indexed add R1, (R2+R3) Base add R1, 5(R2) 2) Write program witch calculates: For i=1 to 3 Z=((A[i]*B[i])+C[i])/D[i] where A,B,C,D and Z are memory locations an operand size is 1 byte. a) Using three address instructions and any addressing mode b) Using two address instructions and any addressing mode
Wow, you are running these programs on a computer with no operating system and no interrupts. On a real computer with a multitasking O/S it is not possible to deterministically calculate a program's run time. Modern processors are superscalar so good luck in trying to determine instruction execution time. This is just an exercise in a vacuum.
Hi Kevin. These examples are taken from Computer Organization and Design by Patterson and Hennessy, the canonical textbook on computer architecture. I work through example problems representative of the textbook material to help my and other students in their computer architecture courses. The authors have a more advanced text (Computer Architecture: A Quantitative Approach) that is used in advanced computer architecture courses and does address some of the issues you criticize my video for not having. Their undergraduate textbook is not perfect, but it is meant as an introduction and is the text almost universally adopted.