假设有一个4级的流水浮点加法器,每个过程段所需要的时间为:0操作数检查t1=70ns,对阶t2=60ns,相加t3=90ns,规格化t4=80ns,缓冲寄存器L的时延为t1=70ns,求
1. 4级流水线的加速比为多少
2. 如果每个过程时间都相同,即都为75ns(包括缓存寄存器时间)时,加速比是多少
参考GPT和自己的思路:
4级流水线的加速比为( t1+t2+t3+t4+L ) / t4 = ( 70+60+90+80+70 ) / 80 = 3.125。
如果每个过程时间都相同,即都为75ns(包括缓存寄存器时间),则总时间为( 4 * 75 ) = 300ns,不管采用流水线还是非流水线处理器,在总时间不变的情况下,加速比都是1。因此,加速比仍然为1。
参考GPT和自己的思路:
4级流水线的加速比可以通过计算流水线的吞吐量与非流水线的吞吐量之比来获取。流水线的吞吐量为每个时钟周期可以输出的结果数,而非流水线的吞吐量是指每个时钟周期只能输出一个结果数。对于这个问题,流水线中所有的过程段所需时间总和为 t1 + t2 + t3 + t4 = 300ns,因此流水线的时钟周期为 300ns。而非流水线的时钟周期则为所有过程段时间的总和,即为 70ns + 60ns + 90ns + 80ns = 300ns。因此,4级流水线的加速比为 1。
当所有过程段的时间都相同时,即为 75ns,流水线的时钟周期为 4 * 75ns = 300ns。非流水线的时钟周期为所有过程段时间的总和,即为 4 * 75ns = 300ns。因此,4级流水线的加速比仍然为 1。
参考GPT和自己的思路:
首先计算出总的流水线延迟时间为:t1+t2+t3+t4+L = 70+60+90+80+70 = 370ns。则4段流水线的加速比为4:1,即流水线处理4个操作的时间等于非流水线处理1个操作的时间,加速比为4。
如果每个过程时间都相同,即都为75ns,总延迟时间为:75x4+75 = 375ns。则加速比为:(70+60+90+80+70)/375=0.71。这种情况下加速比降低了,因为每段的处理时间都变长了,且缓冲寄存器的时间也没变,会导致瓶颈变得更加明显。