日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

计算机指令流水线时间计算,计算机指令-流水线和吞吐率

發布時間:2024/9/30 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机指令流水线时间计算,计算机指令-流水线和吞吐率 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

流水線

我們把計算機的一條指令抽象成三個步驟(實際不止這些)

現在向計算機發送三條指令A,B,C,如果不采用流水線的方式傳輸,那么在每個機器周期中的執行步驟如下圖所示(我們假設每個步驟都會耗費一個機器周期):

采用流水線的方式傳輸如下圖所示:

對比上面兩張圖,我們可以看出,流水線是一種準并行處理技術:

第1個機器周期:處理A指令的取指步驟

第2個機器周期:處理A指令的分析步驟,同時也在處理B指令的取指步驟

以此類推,我們可以看出,同一機器周期只允許處理不同的步驟,不能處理相同的步驟,這樣在保證指令安全的同時也可以加快處理速度,提升了效率,這就是流水線帶來的好處

吞吐率

流水線理解了,吞吐率就好說了,這里的吞吐率指的是流水線的吞吐率,簡單理解吞吐率就是通過數值來反應計算的處理速度,先列個公式:吞吐率 = 指令條數 / 流水線時間

指令條數:需要計算吞吐率的指令的總數

流水線時間:這里的流水線時間指的并不是一個指令流水線花費的時間,而是跑完公式中指定的指令條數所需要的時間,對比上面兩個圖,一條指定所需要耗費的流水線時間是3個機器周期,而跑完ABC三條指令耗費的流水線時間是5個機器周期,對于流水線時間,有個計算公式:一條指令流水線所需要耗費的時間? ?+ (指令條數 - 1)* 一條流水線中最耗時的步驟時間

吞吐率一般分為實際吞吐率和最大吞吐率,下面我從兩個案例來分別講述:

實際吞吐率

按照上面的公式,指令條數為8條,流水線時間=(1+2+3+1) + (8-1) * 3=28,結果就顯而易見是C了

最大吞吐率

我們列個一元二次方程,設最大吞吐率為y,指令條數為x,按照上面的公式y=x /((2+1+3+1+2) + (x-1)* 3),簡化下就是y=x / (3x + 6)=1 / 3 - 2 / (3x-6),x為正整數,當x趨于無窮大的時候,y的最大值為1/3

大家想要更加詳細的了解其中的原理,可以參考:https://blog.csdn.net/yi_zz/article/details/7479912

用通俗易懂的語言闡述復雜的概念,學無止境,共勉前進!!!

總結

以上是生活随笔為你收集整理的计算机指令流水线时间计算,计算机指令-流水线和吞吐率的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。