入門啟示錄Ch08簡報

C
Chiou WeiHaoIT Consultant at Xuenn Pte Ltd à Xuenn Pte Ltd
第八章

效能計算

       1
簡報綱要


8.1   引言
8.2   MIPS
8.3   效能定義
8.4   執行時間   8.6 效能評估程式
8.5   CPI    8.7 結語

                          2
核心重點


    效能有兩種表現方式:程
•
    式的總執行時間、或資料
    的總處理量。


    常見的效能評估方式:MIPS(百萬指令/秒)、CPI(指令平
    常見的效能評估方式:MIPS(百萬指令/秒)、CPI(指令平
•
    均週期)、Benchmark(標準化的效能評估程式)。
    均週期)、Benchmark(標準化的效能評估程式)。

                                 3
開放式的計算機結構延伸出各種不同的設計觀
念,競爭日益明顯,只是廠商彼此之間對於電
腦組織的看法卻有所差異,這也導致各個電腦
有不同的效能表現。




                       4
問題在於:各種五花八門的電腦總是老王
賣瓜,誰的電腦比誰的強?
眾說紛紜,確實應該有一套評估標準,來
量化效能表現,然而這卻是一條漫長的
路。




                     5
8.2


      6
MIPS
                           指令數
                  MIPS =
                         執行時間 × 10 6
源自於早期ENIAC的效能評估
方法,常以MIPS(百萬指令/
秒)代表,也就是每一秒可
以執行多少個指令。
以執行多少個指令
MIPS代表指令執行的速度,看起來機器越快,大體而言,MIPS
MIPS代表指令執行的速度,看起來機器越快,大體而言,MIPS
值似乎也比較大,這種方法簡單易懂,而且與直覺判斷一致。

                                       7
假設一個100MHz計算機,所有指令的執行週期都需要5
個時脈週期,試問其MIPS為何?

解答:
先換算一個時脈週期的執行時間:1/100MHz=10ns
每一個指令需要5個時脈週期5*10ns=50ns
換算成MIPS:
                      指令數              1
           MIPS =               =             = 20
                    執行時間 × 10     50 n × 10
                              6             6




這個計算機具有 20 MIPS

                                                     8
然而
使用MIPS有幾個問題…




               9
1.商業電腦總是標示最大的MIPS值
基於利益,廠商會以某一個指令為基準,造成片面
的效能數據。這是一種效能假象,也就是說,使用
者看到的MIPS往往是最大MIPS值(peak MIPS),
並非平均MIPS值。
2.MIPS不完全能夠代表執行時間的快慢
有些特例會證明:MIPS數據與執行時間有”非線性”
關係,這些非正比特例讓MIPS數據變得不太可靠。

                                 10
某個100MHz計算機下,各類指令的執行週期可能不同:A類
需要1個時脈週期、B類2個時脈週期、C類3個時脈週期,現
在使用兩個不同的編譯器編譯同一個程式,結果出現不同的
指令碼組合:
編譯器一出現: 5M個A類指令、1M個B類指令、1M個C類指令
編譯器二出現:10M個A類指令、1M個B類指令、1M個C類指令
試問(a)依據MIPS,何者較快?(b) 依據執行時間,何者較
快?

                                  11
解答:
先換算一個時脈週期的執行時間:1/100MHz=10ns
(i)編譯器一總共產生的指令數:5M+1M+1M = 7M 個指令
   總共需要執行的時脈週期數:
   5M×A + 1M×B + 1M×C = 5M×1+1M×2+1M×3=10M 個時脈週期
   再把所有的時脈週期轉換成執行時間:10M×10ns = 0.1s
   換算成MIPS:
                          指令數         7M
              MIPS =                       =                     = 70
                       執行時間 × 10                0 . 1 × 10
                                       6                     6



(ii)編譯器二總共產生的指令數:10M+1M+1M = 12M 個指令
   總共需要執行的時脈週期數:
   10M×A + 1M×B+ 1M×C = 10M×1+1M×2+1M×3=15M 個時脈週期
   再把時所有的時脈週期轉換成執行時間:15M×10ns=0.15s
   換算成MIPS:              指令數         12 M
              MIPS =                       =                     = 80   12
                       執行時間 × 10               0.15 × 10
                                   6                         6
解答:
(iii)結論
依照MIPS結果:編譯器二(80MIPS)而編譯器一(70MIPS)
 因此站在MIPS看結果,編譯器二比較快;
依照執行時間結果:編譯器一(0.1s)而編譯器二(0.15s)
 因此站在執行時間看結果,編譯器一比較快;
顯然,以上兩者的結果彼此矛盾,這表示MIPS數據有時並不
 可靠!

                                     13
8.3


      14
效能定義有二:
    與 執行時間   有關(快)
•
    與 資料處理量 有關(量)
•




                     15
效能定義一

在相同的功能基底下,程式所需要的執行時間。
程式執行時間少、跑得快,就代表有好的效能。比如:
我的數學求解程式在A計算機花費10秒,而B計算機花費
15秒,因此A效能是B的1.5倍。

     效能         執行時間         15
              =            =    = 1 .5
          A            B
     效能         執行時間         10
          B            A




                                         16
效能定義二

在相同的功能基底下,測量固定時間所完成的資料處理
量。
在固定時間內可以執行多少程式,服務多少人次,只要
多工處理的資料處理量愈大,這台計算機就具有好的效
能。




                       17
8.4


      18
執行時間


 所謂執行時間:就是程式執行完畢所需要耗費的
 時間。一般而言,就是意指:CPU時間。
 所謂CPU時間:單純地指CPU在執行這個程式時所
 使用的時間,這並不計算其它程式佔用時間、I/O
 介面時間、磁碟時間。



                         19
CPU時間
進一步地說,我們更關心的是CPU使用者時間,這才
是真正使用者程式所耗費的時間,可惜的是:
   CPU時間=CPU系統時間 + CPU使用者時間
照理說,不應該包含CPU系統時間(作業系統所耗費
的時間),可惜的是,我們很難釐清目前正在執行的
是系統指令或使用者程式指令,在這種情況下,自然
不易量測到真正的CPU使用者時間。

                              20
8.5


      21
CPI(指令平均週期,Cycles Per Instruction)
      可以用來計算CPU使用者時間。




                                     22
CPI


不同的機器指令可能具有不同的執行時間,如果能夠
求出所有指令的平均週期(CPI),就可以計算所有指
令執行的CPU使用者時間。
CPU使用者時間=CPU時脈週期×指令總數×CPI




                            23
第一個變數:CPU時脈週期
增快CPU時脈頻率,可以降低CPU時脈週期,
讓CPU使用者時間變小,效能變好!




                         24
試轉換下列CPU:108 KHz 4004 、100MHz 80486、
1GHz Pentium III之時脈週期?

解答:
                            1
                                = 9 .26 μ s
      4004 CPU時脈週期 =
                        108 KHz
                            1
      80486 CPU時脈週期 =           = 10 ns
                        100 MHz

                                   1
                            =         = 1ns
      Pentium III CPU時脈週期
                                1 GHz



                                              25
第二個變數:指令總數
這裡所執行的指令並非高階語言(比如:C語言)
一行一行的那種高階指令,而是意指編譯後所產
生的機器指令;




                         26
在1GHz RISC電腦上,編寫一個高階C程式,經由編譯
器轉譯成低階的機器指令程式,假設該機器指令都需
要單一時脈的指令週期,請問程式執行0.3秒時,共執
行了幾行機器指令?

解答:
                          1
                   =         = 1 ns
  1GHz CPU時脈週期
                       1 GHz

                 0.3s
  被執行的指令數 =           = 300M 行指令
                 1 ns



                                      27
第三個變數:CPI
如果所有指令都是單一時脈週期,則CPI=1。
可惜的是,指令耗費的時脈週期數不一定固定,
因此想要往指令週期方向思考,就必須求出所有
指令的平均週期CPI。

          所有指令的週期總數
    CPI =
            所有指令數



                         28
假設在相同的指令集架構下,計算機A時脈週期為
1ns,CPI = 2.0,計算機B時脈週期為2ns,CPI =
1.5,試作效能比較?

解答:

效能A 執行時間 CPU時脈週期 × 指令總數 × CPIB 2ns × I × 1.5
                              =
   =      =                                  = 1.5
        B       B      B
效能B 執行時間 CPU時脈週期 × 指令總數 × CPIA 1ns × I × 2.0
        A       A      A



因此,A效能是B的1.5倍。


                                              29
8.6


      30
受到分支、跳躍、迴圈、…等指令的影響,
程式內部的指令出現的機率並不相同,有些
頻率高、有些低。
在難以評估指令出現的動態機率時,CPI執
在難以評估指令出現的動態機率時
行效能的估算將變得複雜。




                       31
效能評估程式(benchmark)
將想要測試的基底功能,以固定型態
或固定工作量安排到應用程式內,這
種應用程式稱為效能評估程式。




                    32
SPEC組織
1988年,Appollo/Hewllett、DEC、MIPS、
Sun等知名電腦公司在這種評估觀念下,聯
合共同成立SPEC組織,希望能制訂出一套大
家都能夠接受的標準評估程式,來標準化計
算機效能。




                                   33
SPEC效能評估程式
比如:SPEC89、SPEC92、SPEC95程式,以標準化
的功能進行計算機效能的評估。
然而,由於計算機科技日新月異,所朝向的領域
不斷地延伸發展,不同廠商之間的劇烈競爭,讓
多樣式標準的發展相當分歧與耗時,共識愈難建
立,這也影響著標準評估程式的未來。


                                 34
結   語



        35
在廠商利益的前提下,效能評估是一條漫長的路!
更何況評估程式的選擇及其使用方法,會因為各種
產品的特性不同,出現不同的結果與爭論,顯然只
要是利益,就很難說理!




                         36
就如同運動場的競技分項一樣,你會短跑、我會跳
高、他會游泳、…,實在不易分辨誰是最優秀的運
動員;
同理,也許讓我們站在各種不同的角度,比如:
MIPS、CPI、CPU時脈週期、機器指令總數、處理
量、…,比較能夠全面地觀察該部電腦的效能,防
止廠商的局部投機現象。


                             37
著名的阿姆達定律(Amdahl’s Law)就明確地表示:
計算機的平行處理能力會受到順序執行指令的牽制,
這是影響效能的重要因素…,您無法只改善電腦的某
個部分,就期待整體系統有相同比例的效能提昇…,
在這種情況下,一味地新增處理器數量,可能無法改
善整體運行的效能。



                                38
就整體性而言,改用標準的效能評估程式是一個比較
可行的方法。
但是任何單一評估程式因為廠商立場與競爭的問題,
並不容易滿足所有計算機市場的要求,在這種內外交
迫的情況下,標準的效能評估程式能否受到所有廠商
的認同,也令人懷疑。



                          39
第八章



課程結束
       40
1 sur 40

Recommandé

6兒童照顧與兒童發展 par
6兒童照顧與兒童發展6兒童照顧與兒童發展
6兒童照顧與兒童發展衛生福利部社會及家庭署
3.7K vues32 diapositives
Viagem astral. treinando é possível conseguir uma. par
Viagem astral. treinando é possível conseguir uma.Viagem astral. treinando é possível conseguir uma.
Viagem astral. treinando é possível conseguir uma.Moacyr Constante Junior
942 vues46 diapositives
106上學期 網頁版 par
106上學期 網頁版106上學期 網頁版
106上學期 網頁版Jou Chen
1.6K vues31 diapositives
каучук.гума par
каучук.гумакаучук.гума
каучук.гумаxeniyaya12345
2.9K vues14 diapositives
Boa Nova, Cap 17, Jesus na samaria par
Boa Nova, Cap 17, Jesus na samariaBoa Nova, Cap 17, Jesus na samaria
Boa Nova, Cap 17, Jesus na samariaAntonio Braga
383 vues41 diapositives
釋詞教學教案 par
釋詞教學教案釋詞教學教案
釋詞教學教案shanshans1033135
2.3K vues7 diapositives

Contenu connexe

Tendances

議論的應用 游說方法 par
議論的應用 游說方法議論的應用 游說方法
議論的應用 游說方法ken1470
7.3K vues3 diapositives
天佛院遊記 par
天佛院遊記天佛院遊記
天佛院遊記lyquochoang
732 vues142 diapositives
中三單元八、九 論證的方法、議論的應用 par
中三單元八、九 論證的方法、議論的應用中三單元八、九 論證的方法、議論的應用
中三單元八、九 論證的方法、議論的應用CY Hui
20.5K vues42 diapositives
从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向 par
从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向
从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向fengqin13
1.3K vues2 diapositives
孟子(五) par
孟子(五)孟子(五)
孟子(五)ewww168
2.7K vues120 diapositives
4 ylch s_2015 par
4 ylch s_20154 ylch s_2015
4 ylch s_2015Agent Plus UK
88.6K vues161 diapositives

Tendances(11)

議論的應用 游說方法 par ken1470
議論的應用 游說方法議論的應用 游說方法
議論的應用 游說方法
ken14707.3K vues
中三單元八、九 論證的方法、議論的應用 par CY Hui
中三單元八、九 論證的方法、議論的應用中三單元八、九 論證的方法、議論的應用
中三單元八、九 論證的方法、議論的應用
CY Hui20.5K vues
从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向 par fengqin13
从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向
从刘郑先生在新西兰所著《大仁》中,看人类的整体历史走向
fengqin131.3K vues
孟子(五) par ewww168
孟子(五)孟子(五)
孟子(五)
ewww1682.7K vues
启思出版社 par ken1470
启思出版社启思出版社
启思出版社
ken147022.3K vues
《論語八則》.pptx par hingmanYao
《論語八則》.pptx《論語八則》.pptx
《論語八則》.pptx
hingmanYao919 vues
20100504 學仁大仙結緣訓 amended par guest9ec3ddcf
20100504 學仁大仙結緣訓 amended20100504 學仁大仙結緣訓 amended
20100504 學仁大仙結緣訓 amended
guest9ec3ddcf6.3K vues
感覺統合介紹 par 宜燁 吳
感覺統合介紹感覺統合介紹
感覺統合介紹
宜燁 吳1.2K vues
新西兰刘郑先生在《大仁》视频中所述“至善将至恶”,全方位透彻解读传统中的“相生相克”之理 par fengqin13
新西兰刘郑先生在《大仁》视频中所述“至善将至恶”,全方位透彻解读传统中的“相生相克”之理新西兰刘郑先生在《大仁》视频中所述“至善将至恶”,全方位透彻解读传统中的“相生相克”之理
新西兰刘郑先生在《大仁》视频中所述“至善将至恶”,全方位透彻解读传统中的“相生相克”之理
fengqin13774 vues

Plus de Chiou WeiHao

入門啟示錄Ch07簡報 par
入門啟示錄Ch07簡報入門啟示錄Ch07簡報
入門啟示錄Ch07簡報Chiou WeiHao
490 vues47 diapositives
入門啟示錄Ch06簡報 par
入門啟示錄Ch06簡報入門啟示錄Ch06簡報
入門啟示錄Ch06簡報Chiou WeiHao
1.6K vues72 diapositives
入門啟示錄Ch05簡報 par
入門啟示錄Ch05簡報入門啟示錄Ch05簡報
入門啟示錄Ch05簡報Chiou WeiHao
1.2K vues72 diapositives
入門啟示錄Ch04簡報 par
入門啟示錄Ch04簡報入門啟示錄Ch04簡報
入門啟示錄Ch04簡報Chiou WeiHao
1.3K vues50 diapositives
入門啟示錄Ch02簡報 par
入門啟示錄Ch02簡報入門啟示錄Ch02簡報
入門啟示錄Ch02簡報Chiou WeiHao
1.1K vues40 diapositives
入門啟示錄 Ch03簡報 par
入門啟示錄 Ch03簡報入門啟示錄 Ch03簡報
入門啟示錄 Ch03簡報Chiou WeiHao
767 vues51 diapositives

Plus de Chiou WeiHao(6)

入門啟示錄Ch07簡報 par Chiou WeiHao
入門啟示錄Ch07簡報入門啟示錄Ch07簡報
入門啟示錄Ch07簡報
Chiou WeiHao490 vues
入門啟示錄Ch06簡報 par Chiou WeiHao
入門啟示錄Ch06簡報入門啟示錄Ch06簡報
入門啟示錄Ch06簡報
Chiou WeiHao1.6K vues
入門啟示錄Ch05簡報 par Chiou WeiHao
入門啟示錄Ch05簡報入門啟示錄Ch05簡報
入門啟示錄Ch05簡報
Chiou WeiHao1.2K vues
入門啟示錄Ch04簡報 par Chiou WeiHao
入門啟示錄Ch04簡報入門啟示錄Ch04簡報
入門啟示錄Ch04簡報
Chiou WeiHao1.3K vues
入門啟示錄Ch02簡報 par Chiou WeiHao
入門啟示錄Ch02簡報入門啟示錄Ch02簡報
入門啟示錄Ch02簡報
Chiou WeiHao1.1K vues
入門啟示錄 Ch03簡報 par Chiou WeiHao
入門啟示錄 Ch03簡報入門啟示錄 Ch03簡報
入門啟示錄 Ch03簡報
Chiou WeiHao767 vues

入門啟示錄Ch08簡報