1,108 views

Consider this question and its selected answer: https://gateoverflow.in/3690/gate2004-it-47

And this question: https://gateoverflow.in/1314/gate2009-28

Both questions are somewhat similar.

In the first one's answer, instruction $I_1$ (when i = 2), the $S_2$ stage is started in 9th cycle and not 8th, because the result of previous instruction ($I_4$) is still in the $S_2$/$S_3$ buffer during 8th clock cycle. https://gateoverflow.in/3690/gate2004-it-47?show=135162#c135162

While, in the answer of the second question, the $S_1$ stage of instruction $I_4$ (during first iteration), should start from clock 7, but the answer shows it in clock 6. Similarly with other instructions.

I am not getting why this difference? Is there any point that I am missing?

PS. From where can I study this? Hamacher book doesn't contain pipelining in this much detail.

first read hamacher, then solve all gate ques
@srestha,

the answer depends on fact that whether the buffer can strore multiple result or not...

according to me, it should be explicitly mentioned in qsn whether to assume multiple buffer or not, because answer varies accordingly..
yes, and I think solution of gate question is enough for this
I am not able to understand. I have this doubt and can't understand why there is the difference. It will be good if you or others can help me in clearing my doubt :'(
You are not alone man, Hamacher's book is confusing the hell out of me while i was solving previous year's gate questions...
Especially the performance evaluation part, having hard time figuring out which formula to use and where!

@Rishabh

After checking question

as @nitish said if multi buffer pipelined is allowed then only concept wise https://gateoverflow.in/3690/gate2004-it-47

this one is true, otherwise u need to wait for stall too.

Means if there is a stall means the previous stage is continuing

So, u cannot start next stage  in next instruction

Though in GATE question this doesnot follow, as per my knowledge

I think GATE question follow multibuffer system , So, we havenot wait to still stall complete for an instruction, to start next stage.

Upto this I can tell,

I think ur doubt cleared

U can also share knowledge in this , if u get some information :)

Thanks. :)

@Rishabh Gupta 2 why in the 2009 question of your doubt asked we are not considering without loop level parallelism like why answer is not 30 ?