版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1 1/77/77 第1章 計算機系統(tǒng)結構的基本概念張晨曦張晨曦 劉依劉依www.GotoS2 2/77/771.1 引言1.2 計算機系統(tǒng)結構的概念1.3 定量分析技術1.4 計算機系統(tǒng)結構的發(fā)展1.5 計算機系統(tǒng)結構中并行性的發(fā)展3 3/77/771. 第一臺通用電子計算機誕生于1946年 2. 計算機技術的飛速發(fā)展得益于兩個方面 計算機制造技術的發(fā)展 計算機系統(tǒng)結構的創(chuàng)新3. 經歷了4個發(fā)展過程 1.1 引 言4 4/77/77時 間原 因每年的性能增長19461946年起的年起的2525年年 兩種因素都起著主要的作用兩種因素都起著主要的作用 25% 25% 2020世紀世紀7070年代
2、末年代末8080年代初年代初 大規(guī)模集成電路和微處理器大規(guī)模集成電路和微處理器出現(xiàn)出現(xiàn), ,以集成電路為代表的制以集成電路為代表的制造技術的發(fā)展造技術的發(fā)展 約約35% 35% 2020世紀世紀8080年代中開年代中開始始 RISCRISC結構的出現(xiàn),系統(tǒng)結構不斷更結構的出現(xiàn),系統(tǒng)結構不斷更新和變革,制造技術不斷發(fā)展新和變革,制造技術不斷發(fā)展50%50%以上以上維持了約維持了約1616年年 20022002年以來年以來 3 3個(見下頁)個(見下頁)約約20%20%1.1 引言5 5/77/771.1 引言 功耗問題(已經很大)。 可以進一步有效開發(fā)的指令級并行性已經很少。 存儲器訪問速度的提
3、高緩慢。 6 6/77/771.1 引言系統(tǒng)結構的重大轉折: 從單純依靠指令級并行轉向開發(fā)線程級并行和數從單純依靠指令級并行轉向開發(fā)線程級并行和數據級并行。據級并行。 計算機系統(tǒng)結構在計算機的發(fā)展中有著極其重要計算機系統(tǒng)結構在計算機的發(fā)展中有著極其重要的作用。的作用。7 7/77/771. 計算機系統(tǒng)硬件/固件軟件2. 計算機語言從低級向高級發(fā)展 高一級語言的語句相對于低一級語言來說功能更強,高一級語言的語句相對于低一級語言來說功能更強,更便于應用,但又都以低級語言為基礎。更便于應用,但又都以低級語言為基礎。 3. 從計算機語言的角度,把計算機系統(tǒng)按功能劃分成 多級層次結構。 每一層以一種語言
4、為特征 1.2 計算機系統(tǒng)結構的概念1.2.1 計算機系統(tǒng)的層次結構 第第 6 級級:應應用用語語言言虛虛擬擬機機 第第 5 級級:高高級級語語言言虛虛擬擬機機 第第 4 級級:匯匯編編語語言言虛虛擬擬機機 第第 3 3 級級:操操作作系系統(tǒng)統(tǒng)虛虛擬擬機機 第第 2 2 級級:機機器器語語言言( (傳傳統(tǒng)統(tǒng)機機器器級級) ) 第第 1 1 級級:微微程程序序機機器器級級 軟件軟件硬件或固件硬件或固件9 9/77/771.2 計算機系統(tǒng)結構的概念 虛擬機:由軟件實現(xiàn)的機器 語言實現(xiàn)的兩種基本技術q翻譯:翻譯:先把先把N N+1+1級程序全部轉換成級程序全部轉換成N N級程序后,再去執(zhí)級程序后,再
5、去執(zhí)行新產生的行新產生的N N級程序,在執(zhí)行過程中級程序,在執(zhí)行過程中N N+1+1級程序不再被級程序不再被訪問。訪問。 q解釋:解釋:每當一條每當一條N N+1+1級指令被譯碼后,就直接去執(zhí)行級指令被譯碼后,就直接去執(zhí)行一串等效的一串等效的N N級指令,然后再去取下一條級指令,然后再去取下一條N N+1+1級的指令,級的指令,依此重復進行。依此重復進行。 解釋執(zhí)行比編譯后再執(zhí)行所花的時間多,但占用的存儲空間較少。 1010/77/771.2 計算機系統(tǒng)結構的概念1. 計算機系統(tǒng)結構的經典定義程序員所看到的計算機屬性,即概念性結構與功能特性。2. 按照計算機系統(tǒng)的多級層次結構,不同級程序員所看
6、到的計算機具有不同的屬性。3. 透明性在計算機技術中,把這種本來存在的事物或屬性,但從某種角度看又好像不存在的概念稱為透明性。1.2.2 計算機系統(tǒng)結構的定義1111/77/771.2 計算機系統(tǒng)結構的概念4. Amdahl提出的系統(tǒng)結構 傳統(tǒng)機器語言級程序員所看到的計算機屬性。5. 廣義的系統(tǒng)結構定義:指令集結構、組成、硬件 (計算機設計的(計算機設計的3 3個方面)個方面)6. 對于通用寄存器型機器來說,這些屬性主要是指:指令系統(tǒng) 包括機器指令的操作類型和格式、指令間的包括機器指令的操作類型和格式、指令間的排序和控制機構等。排序和控制機構等。數據表示 硬件能直接識別和處理的數據類型。硬件能
7、直接識別和處理的數據類型。尋址規(guī)則 包括最小尋址單元、尋址方式及其表示。包括最小尋址單元、尋址方式及其表示。 1212/77/771.2 計算機系統(tǒng)結構的概念寄存器定義 (包括各種寄存器的定義、數量和使用方式)(包括各種寄存器的定義、數量和使用方式) 中斷系統(tǒng)(中斷的類型和中斷響應硬件的功能等)(中斷的類型和中斷響應硬件的功能等) 機器工作狀態(tài)的定義和切換(如管態(tài)和目態(tài)等)(如管態(tài)和目態(tài)等) 存儲系統(tǒng) (主存容量、程序員可用的最大存儲容量等)(主存容量、程序員可用的最大存儲容量等) 信息保護(包括信息保護方式和硬件對信息保護的支持)(包括信息保護方式和硬件對信息保護的支持) 1313/77/7
8、71.2 計算機系統(tǒng)結構的概念I/O結構包括包括I/OI/O連結方式、處理機連結方式、處理機/ /存儲器與存儲器與I/OI/O設備之間設備之間數據傳送的方式和格式以及數據傳送的方式和格式以及I/OI/O操作的狀態(tài)等操作的狀態(tài)等計算機系統(tǒng)結構概念的實質: 確定計算機系統(tǒng)中軟、硬件的界面,界面之上是軟件實現(xiàn)的功能,界面之下是硬件和固件實現(xiàn)的功能。1.2.3 計算機組成和計算機實現(xiàn)1. 計算機系統(tǒng)結構:計算機系統(tǒng)的軟、硬件的界面即機器語言程序員所看到的傳統(tǒng)機器級所具有的屬性。 1414/77/771.2 計算機系統(tǒng)結構的概念2. 計算機組成:計算機系統(tǒng)結構的邏輯實現(xiàn)包含物理機器級中的數據流和控制流的
9、組成以及 邏輯設計等。著眼于:物理機器級內各事件的排序方式與控制 方式、各部件的功能以及各部件之間的聯(lián)系。3. 計算機實現(xiàn):計算機組成的物理實現(xiàn)包括處理機、主存等部件的物理結構,器件的集 成度和速度,模塊、插件、底板的劃分與連接, 信號傳輸,電源、冷卻及整機裝配技術等。著眼于:器件技術(起主導作用)、微組裝技術。1515/77/771.2 計算機系統(tǒng)結構的概念 一種體系結構可以有多種組成。 一種組成可以有多種物理實現(xiàn)。4. 系列機 由同一廠家生產的具有相同系統(tǒng)結構、但具有不同組成和實現(xiàn)的一系列不同型號的計算機。 例如,例如,IBMIBM公司的公司的IBM 370IBM 370系列,系列,Int
10、elIntel公司的公司的x86x86系列等。系列等。1.2.4 計算機系統(tǒng)結構的分類常見的計算機系統(tǒng)結構分類法有兩種: Flynn分類法、馮氏分類法1616/77/771.2 計算機系統(tǒng)結構的概念1. 馮氏分類法用系統(tǒng)的最大并行度對計算機進行分類。最大并行度:計算機系統(tǒng)在單位時間內能夠處理 的最大的二進制位數。 用平面直角坐標系中的一個點代表一個計算機系用平面直角坐標系中的一個點代表一個計算機系統(tǒng),其橫坐標表示字寬(統(tǒng),其橫坐標表示字寬(n n位位),縱坐標表示一次能同),縱坐標表示一次能同時處理的字數(時處理的字數(m m字字)。)。m mn n就表示了其最大并行度。就表示了其最大并行度。
11、 2. Flynn分類法 按照指令流和數據流的多倍性進行分類。指令流:計算機執(zhí)行的指令序列。1717/77/771.2 計算機系統(tǒng)結構的概念數據流:由指令流調用的數據序列。多倍性:在系統(tǒng)受限的部件上,同時處于同一執(zhí) 行階段的指令或數據的最大數目。Flynn分類法把計算機系統(tǒng)的結構分為4類:q 單指令流單數據流單指令流單數據流(SISD)(SISD)q 單指令流多數據流單指令流多數據流(SIMD)(SIMD)q 多指令流單數據流多指令流單數據流(MISD)(MISD)q 多指令流多數據流多指令流多數據流(MIMD)(MIMD)4類計算機的基本結構ISIS:指令流,:指令流,DSDS:數據流,:數
12、據流,CSCS:控制流,:控制流,CUCU:控制部件,:控制部件,PUPU:處理部件,:處理部件,MMMM和和SMSM:存儲器。:存儲器。 CU PU MM IS CS PU1 PU2 PUn PU1 PU2 PUn CU1 CU2 CUn CS1 CS2 CSn PU1 PU2 PUn CU1 CU2 CUn CS1 CS2 CSn MM1 MM2 MMm DS IS1 IS2 ISn SM DS (c)MISD 計計算算機機 DS1 DS2 DSn MM1 MM2 MMm SM IS1 IS2 ISn (d)MIMD 計計算算機機 (a)SISD 計計算算機機 MM1 MM2 MMm SM
13、 CU DS1 DS2 DSn IS (b)SIMD 計計算算機機 CS DS 1919/77/774個定量原理:1. 以經常性事件為重點對經常發(fā)生的情況采用優(yōu)化方法的原則進行選 擇,以得到更多的總體上的改進。優(yōu)化是指分配更多的資源、達到更高的性能或 者分配更多的電能等。 1.3 定量分析技術1.3.1 計算機系統(tǒng)設計的定量原理2020/77/771.3 定量分析技術2. Amdahl定律 加快某部件執(zhí)行速度所能獲得的系統(tǒng)性能加速比,受限于該部件的執(zhí)行時間占系統(tǒng)中總執(zhí)行時間的百分比。系統(tǒng)性能加速比:加速比系統(tǒng)性能改進后系統(tǒng)性能改進前總執(zhí)行時間改進前總執(zhí)行時間改進后 2121/77/771.3
14、定量分析技術加速比依賴于兩個因素q可改進比例:可改進比例:在改進前的系統(tǒng)中,可改進部分的執(zhí)在改進前的系統(tǒng)中,可改進部分的執(zhí) 行時間在總的執(zhí)行時間中所占的比例。行時間在總的執(zhí)行時間中所占的比例。 它總是小于等于它總是小于等于1 1。例如:例如:一個需運行一個需運行6060秒的程序中有秒的程序中有2020秒的運算可以加速,秒的運算可以加速, 那么這個比例就是那么這個比例就是20/6020/60。q部件加速比:部件加速比:可改進部分改進以后性能提高的倍數??筛倪M部分改進以后性能提高的倍數。 它是改進前所需的執(zhí)行時間與改進后執(zhí)行時間的比。它是改進前所需的執(zhí)行時間與改進后執(zhí)行時間的比。 一般情況下部件加
15、速比是大于一般情況下部件加速比是大于1 1的。的。例如:例如:若系統(tǒng)改進后,可改進部分的執(zhí)行時間是若系統(tǒng)改進后,可改進部分的執(zhí)行時間是2 2秒,秒, 而改進前其執(zhí)行時間為而改進前其執(zhí)行時間為5 5秒,則部件加速比為秒,則部件加速比為5/25/2。2222/77/771.3 定量分析技術改進后程序的總執(zhí)行時間總執(zhí)行時間改進后 不可改進部分的執(zhí)行時間 可改進部分改進后的執(zhí)行時間總執(zhí)行時間改進后 (1可改進比例)總執(zhí)行時間改進前 + (1 可改進比例) + 總執(zhí)行時間改進前 可改進比例部件加速比可改進比例總執(zhí)行時間改進前部件加速比2323/77/771.3 定量分析技術系統(tǒng)加速比為改進前與改進后總執(zhí)
16、行時間之比加速比 總執(zhí)行時間改進前總執(zhí)行時間改進后 (1可改進比例)+可改進比例部件加速比12424/77/771.3 定量分析技術 例例1.1 1.1 將計算機系統(tǒng)中某一功能的處理速度提高到原來的將計算機系統(tǒng)中某一功能的處理速度提高到原來的2020倍,但該功能的處理時間僅占整個系統(tǒng)運行時間的倍,但該功能的處理時間僅占整個系統(tǒng)運行時間的40%40%,則采,則采用此提高性能的方法后,能使整個系統(tǒng)的性能提高多少?用此提高性能的方法后,能使整個系統(tǒng)的性能提高多少? 解解 由題可知,可改進比例由題可知,可改進比例 = 40% = 0.4= 40% = 0.4, 部件加速比部件加速比 = 20= 20
17、根據根據AmdahlAmdahl定律可知:定律可知: 采用此提高性能的方法后,能使整個系統(tǒng)的性能提高到原采用此提高性能的方法后,能使整個系統(tǒng)的性能提高到原來的來的1.6131.613倍倍。 總加速比 = 10.6 +0.420= 1.6132525/77/771.3 定量分析技術 例例1.2 1.2 某計算機系統(tǒng)采用浮點運算部件后,使浮點運算速某計算機系統(tǒng)采用浮點運算部件后,使浮點運算速度提高到原來的度提高到原來的2020倍,而系統(tǒng)運行某一程序的整體性能提高到倍,而系統(tǒng)運行某一程序的整體性能提高到原來的原來的5 5倍,試計算該程序中浮點操作所占的比例。倍,試計算該程序中浮點操作所占的比例。 解
18、解 由題可知,部件加速比由題可知,部件加速比 = 20= 20,系統(tǒng)加速比,系統(tǒng)加速比 = 5= 5 根據根據AmdahlAmdahl定律可知定律可知 由此可得:可改進比例由此可得:可改進比例 = 84.2% = 84.2% 即程序中浮點操作所占的比例為即程序中浮點操作所占的比例為84.2%84.2%。20115可改進比例可改進比例 2626/77/771.3 定量分析技術Amdahl定律:一種性能改進的遞減規(guī)則q如果僅僅對計算任務中的一部分做性能改進,則改如果僅僅對計算任務中的一部分做性能改進,則改 進得越多,所得到的總體性能的提升就越有限。進得越多,所得到的總體性能的提升就越有限。重要推論
19、:如果只針對整個任務的一部分進行改 進和優(yōu)化,那么所獲得的加速比不超過 1/(1可改進比例) 2727/77/771.3 定量分析技術3. CPU性能公式執(zhí)行一個程序所需的CPU時間CPU時間 = 執(zhí)行程序所需的時鐘周期數時鐘周期時間其中,時鐘周期時間是系統(tǒng)時鐘頻率的倒數。每條指令執(zhí)行的平均時鐘周期數CPI (Cycles Per InstructionCycles Per Instruction) CPI = 執(zhí)行程序所需的時鐘周期數IC ICIC:所執(zhí)行的指令條數所執(zhí)行的指令條數程序執(zhí)行的CPU時間可以寫成 CPU時間 = IC CPI 時鐘周期時間 2828/77/771.3 定量分析技
20、術CPU的性能取決于3個參數q時鐘周期時間:時鐘周期時間:取決于硬件實現(xiàn)技術和計算機組成。取決于硬件實現(xiàn)技術和計算機組成。qCPICPI:取決于計算機組成和指令集結構。取決于計算機組成和指令集結構。qICIC:取決于指令集結構和編譯技術。取決于指令集結構和編譯技術。對CPU性能公式進行進一步細化 假設:計算機系統(tǒng)有假設:計算機系統(tǒng)有n n種指令;種指令; CPICPIi i :第第i i種指令的處理時間;種指令的處理時間; ICICi i :在程序中第在程序中第i i種指令出現(xiàn)的次數;種指令出現(xiàn)的次數;則則 CPUCPU時鐘周期數時鐘周期數 = = (CPI (CPIi i IC ICi i)
21、 )n ni i=1=12929/77/771.3 定量分析技術CPU時間 = 執(zhí)行程序所需的時鐘周期數時鐘周期時間 = (CPIiICi)時鐘周期時間CPI可以表示為CPI = = = 其中,(ICi/IC)反映了第i種指令在程序中所占的比例。 i=1n時鐘周期數IC(CPIiICi)i=1nIC(CPIi )i=1nICiIC3030/77/771.3 定量分析技術 例例1.3 1.3 考慮條件分支指令的兩種不同設計方法:考慮條件分支指令的兩種不同設計方法: (1 1)CPUCPUA A:通過比較指令設置條件碼,然后測試條件碼進行通過比較指令設置條件碼,然后測試條件碼進行分支。分支。 (2
22、 2)CPUCPUB B:在分支指令中包括比較過程。在分支指令中包括比較過程。 在這兩種在這兩種CPUCPU中,條件分支指令都占用中,條件分支指令都占用2 2個時鐘周期,而所有個時鐘周期,而所有其他指令占用其他指令占用1 1個時鐘周期。對于個時鐘周期。對于CPUCPUA A,執(zhí)行的指令中分支指令占,執(zhí)行的指令中分支指令占20%20%;由于每條分支指令之前都需要有比較指令,因此比較指令也;由于每條分支指令之前都需要有比較指令,因此比較指令也占占20%20%。由于。由于CPUCPUA A在分支時不需要比較,因此在分支時不需要比較,因此CPUCPUB B的時鐘周期時間的時鐘周期時間是是CPUCPUA
23、 A的的1.251.25倍。問:哪一個倍。問:哪一個CPUCPU更快?如果更快?如果CPUCPUB B的時鐘周期時間的時鐘周期時間只是只是CPUCPUA A的的1.11.1倍,哪一個倍,哪一個CPUCPU更快呢?更快呢?3131/77/771.3 定量分析技術 解解 我們不考慮所有系統(tǒng)問題,所以可用我們不考慮所有系統(tǒng)問題,所以可用CPUCPU性能公式。占用性能公式。占用2 2個時鐘個時鐘周期的分支指令占總指令的周期的分支指令占總指令的20%20%,剩下的指令占用,剩下的指令占用1 1個時鐘周期。個時鐘周期。所以所以 CPICPIA A = 0.2 = 0.2 2 + 0.80 2 + 0.80
24、 1 = 1.2 1 = 1.2則則CPUCPUA A性能為性能為 總總CPUCPU時間時間A A = IC = ICA A 1.2 1.2 時鐘周期時鐘周期A A根據假設,有根據假設,有 時鐘周期時鐘周期B B = 1.25 = 1.25 時鐘周期時鐘周期A A 在在CPUCPUB B中沒有獨立的比較指令,所以中沒有獨立的比較指令,所以CPUCPUB B的程序量為的程序量為CPUCPUA A的的80%80%,分支指令的比例為,分支指令的比例為3232/77/771.3 定量分析技術 20%/80% = 25%20%/80% = 25% 這些分支指令占用這些分支指令占用2 2個時鐘周期,而剩下
25、的個時鐘周期,而剩下的75%75%的指令占用的指令占用1 1個時鐘個時鐘周期,因此周期,因此 CPICPIB B = 0.25 = 0.25 2 + 0.75 2 + 0.75 1 = 1.25 1 = 1.25因為因為CPUCPUB B不執(zhí)行比較,故不執(zhí)行比較,故 ICICB B = 0.8 = 0.8 IC ICA A因此因此CPUCPUB B性能為性能為 總總CPUCPU時間時間B B = IC = ICB B CPI CPIB B 時鐘周期時鐘周期B B = 0.8 = 0.8 ICICA A 1.25 1.25 (1.25 1.25 時鐘周期時鐘周期A A) = 1.25 = 1.2
26、5 ICICA A 時鐘周期時鐘周期A A3333/77/771.3 定量分析技術 在這些假設之下,盡管在這些假設之下,盡管CPUCPUB B執(zhí)行指令條數較少,執(zhí)行指令條數較少,CPUCPUA A因為有著更因為有著更短的時鐘周期,所以比短的時鐘周期,所以比CPUCPUB B快???。 如果如果CPUCPUB B的時鐘周期時間僅僅是的時鐘周期時間僅僅是CPUCPUA A的的1.11.1倍,則倍,則 時鐘周期時鐘周期B B = 1.10 = 1.10 時鐘周期時鐘周期A ACPUCPUB B的性能為的性能為 總總CPUCPU時間時間B B = IC = ICB B CPICPIB B 時鐘周期時鐘周
27、期B B = 0.8 = 0.8 ICICA A 1.25 1.25 (1.10 1.10 時鐘周期時鐘周期A A) = 1.10 = 1.10 IC ICA A 時鐘周期時鐘周期A A 因此因此CPUCPUB B由于執(zhí)行更少指令條數,比由于執(zhí)行更少指令條數,比CPUCPUA A運行更快。運行更快。3434/77/771.3 定量分析技術4. 程序的局部性原理 程序執(zhí)行時所訪問的存儲器地址分布不是隨機的,而是相對地簇聚。常用的一個經驗規(guī)則程序執(zhí)行時間的程序執(zhí)行時間的90%90%都是在執(zhí)行程序中都是在執(zhí)行程序中10%10%的代碼。的代碼。程序的時間局部性程序即將用到的信息很可能就是目前正在使用的
28、信息。程序即將用到的信息很可能就是目前正在使用的信息。程序的空間局部性 程序即將用到的信息很可能與目前正在使用的信息程序即將用到的信息很可能與目前正在使用的信息在空間上相鄰或者臨近。在空間上相鄰或者臨近。3535/77/771.3 定量分析技術1. 執(zhí)行時間和吞吐率 如何評測一臺計算機的性能,與測試者看問題的角度有關。用戶關心的是:單個程序的執(zhí)行時間(執(zhí)行單個 程序所花的時間很少)數據處理中心的管理員關心的是:吞吐率(在單 位時間里能夠完成的任務很多 )1.3.2 計算機系統(tǒng)的性能評測3636/77/771.3 定量分析技術假設兩臺計算機為X和Y,X比Y快的意思是: 對于給定任務,X的執(zhí)行時間
29、比Y的執(zhí)行時間少。X的性能是Y的n倍,即而執(zhí)行時間與性能成反比,即 執(zhí)行時間Y執(zhí)行時間X=nn= = =執(zhí)行時間Y執(zhí)行時間X性能Y1性能X1性能X性能Y3737/77/771.3 定量分析技術執(zhí)行時間可以有多種定義:q計算機完成某一任務所花費的全部時間,包括計算機完成某一任務所花費的全部時間,包括磁盤訪磁盤訪問、存儲器訪問、輸入問、存儲器訪問、輸入/輸出、操作系統(tǒng)開銷等。輸出、操作系統(tǒng)開銷等。qCPU時間:時間:CPUCPU執(zhí)行所給定的程序所花費的時間,不執(zhí)行所給定的程序所花費的時間,不包含包含I/OI/O等待時間以及運行其他程序的時間。等待時間以及運行其他程序的時間。n用戶用戶CPUCPU時
30、間:時間:用戶程序所耗費的用戶程序所耗費的CPUCPU時間。時間。n系統(tǒng)系統(tǒng)CPUCPU時間:時間:用戶程序運行期間操作系統(tǒng)耗費的用戶程序運行期間操作系統(tǒng)耗費的 CPUCPU時間。時間。3838/77/771.3 定量分析技術2.基準測試程序 用于測試和比較性能的基準測試程序的最佳選擇是真實應用程序。 (例如編譯器)(例如編譯器) 以前常采用簡化了的程序,例如: q核心測試程序:核心測試程序:從真實程序中選出的關鍵代碼段構從真實程序中選出的關鍵代碼段構 成的小程序。成的小程序。q小測試程序:小測試程序:簡單的只有幾十行的小程序。簡單的只有幾十行的小程序。q合成的測試程序:合成的測試程序:人工合
31、成出來的程序。人工合成出來的程序。WhetstoneWhetstone與與DhrystoneDhrystone是最流行的合成測試程序。是最流行的合成測試程序。 從測試性能的角度來看,上述測試程序就不可信了。 3939/77/771.3 定量分析技術原因:p這些程序比較小,具有片面性;這些程序比較小,具有片面性;p系統(tǒng)結構設計者和編譯器的設計者可以系統(tǒng)結構設計者和編譯器的設計者可以“合謀合謀”把他把他們的計算機面向這些測試程序進行優(yōu)化設計,使得該們的計算機面向這些測試程序進行優(yōu)化設計,使得該計算機顯得性能更高。計算機顯得性能更高。性能測試的結果除了和采用什么測試程序有關以 外,還和在什么條件下進
32、行測試有關?;鶞蕼y試程序設計者對制造商的要求q采用同一種編譯器;采用同一種編譯器;q對同一種語言的程序都采用相同的一組編譯標志。對同一種語言的程序都采用相同的一組編譯標志。 4040/77/771.3 定量分析技術一個問題:是否允許修改測試程序的源程序三種不同的處理方法:q不允許修改。不允許修改。q允許修改,但因測試程序很復雜或者很大,幾乎是允許修改,但因測試程序很復雜或者很大,幾乎是無法修改。無法修改。q允許修改,只要保證最后輸出的結果相同。允許修改,只要保證最后輸出的結果相同?;鶞蕼y試程序套件:由各種不同的真實應用程序構成。 (能比較全面地反映計算機在各個方面的處理性能(能比較全面地反映計
33、算機在各個方面的處理性能 )SPEC系列:最成功和最常見的測試程序套件(美國的標準性能評估公司開發(fā))(美國的標準性能評估公司開發(fā))4141/77/771.3 定量分析技術q臺式計算機的基準測試程序套件可以分為兩大類:臺式計算機的基準測試程序套件可以分為兩大類:處理器性能測試程序,圖形性能測試程序處理器性能測試程序,圖形性能測試程序qSPEC89SPEC89:用于測試處理器性能。用于測試處理器性能。1010個程序(個程序(4 4個整數程個整數程序,序,6 6個浮點程序)個浮點程序)q演化出了演化出了4 4個版本個版本SPEC92SPEC92:2020個程序個程序SPEC95SPEC95:1818
34、個程序個程序SPEC2000SPEC2000:2626個程序個程序SPEC CPU2006SPEC CPU2006: 2929個程序個程序qSPEC CPU2006SPEC CPU20064242/77/771.3 定量分析技術整數程序整數程序1212個(個(CINT2006CINT2006)9 9個是用個是用C C寫的,寫的,3 3個是用個是用C+C+寫的寫的浮點程序浮點程序1717個(個(CFP2006CFP2006)6 6個是用個是用FORTRANFORTRAN寫的,寫的,4 4個是用個是用C+C+寫的,寫的,3 3個個是用是用C C寫的,寫的,4 4個是用個是用C C和和FORTRAN
35、FORTRAN混合編寫的?;旌暇帉懙摹PEC測試程序套件中的其他一系列測試程序組件qSPECSFSSPECSFS:用于用于NFSNFS(網絡文件系統(tǒng))文件服務器的測(網絡文件系統(tǒng))文件服務器的測試程序。它不僅測試處理器的性能,而且測試試程序。它不僅測試處理器的性能,而且測試I/OI/O系統(tǒng)系統(tǒng)的性能。它重點測試吞吐率。的性能。它重點測試吞吐率。qSPECWebSPECWeb:WebWeb服務器測試程序。服務器測試程序。4343/77/771.3 定量分析技術qSPECviewperfSPECviewperf:用于測試圖形系統(tǒng)支持用于測試圖形系統(tǒng)支持OpenGLOpenGL庫庫的性能。的性能。
36、qSPECapcSPECapc:用于測試圖形密集型應用的性能。用于測試圖形密集型應用的性能。事務處理(TP)性能測試基準程序:用于測試計算機在事務處理方面的能力,包括數據庫訪問 和更新等。q2020世紀世紀8080年代中期,一些工程師成立了稱為年代中期,一些工程師成立了稱為TPCTPC的獨的獨立組織。目的是開發(fā)用于立組織。目的是開發(fā)用于TPTP性能測試的真實而又公平性能測試的真實而又公平的基準程序。的基準程序。q先后發(fā)布了多個版本:先后發(fā)布了多個版本: TPC-ATPC-A、TPC-CTPC-C、TPC-HTPC-H、TPC-WTPC-W、TPC-AppTPC-App等等(主要是用于測試服務器
37、的性能(主要是用于測試服務器的性能 )4444/77/771.3 定量分析技術用于測試基于Microsoft公司的Windows系列操作系統(tǒng)平臺的測試套件q PCMark04PCMark04:中央處理器測試組、內存測試組、圖形芯片中央處理器測試組、內存測試組、圖形芯片測試組、硬盤測試組等。測試組、硬盤測試組等。qBusiness Winstone 2004Business Winstone 2004:主要用于測試計算機系統(tǒng)主要用于測試計算機系統(tǒng)商業(yè)應用的綜合性能。商業(yè)應用的綜合性能。qMultimedia Content Creation Winstone 2004Multimedia Con
38、tent Creation Winstone 2004:主要用主要用于測試計算機系統(tǒng)多媒體應用的綜合性能。于測試計算機系統(tǒng)多媒體應用的綜合性能。qSiSoft Sandra Pro 2004SiSoft Sandra Pro 2004:一套功能強大的系統(tǒng)分析一套功能強大的系統(tǒng)分析評比工具,擁有超過評比工具,擁有超過3030種以上的分析與測試模塊。種以上的分析與測試模塊。 主要包括:主要包括:CPUCPU、存儲器、存儲器、I/OI/O接口、接口、I/OI/O設備、主板等。設備、主板等。 3. 性能比較A機 B機 C機 W(1) W(2) W(3) 程序程序1 1 1.00 1.00 10.00
39、10.00 20.00 20.00 0.50 0.50 0.909 0.909 0.999 0.999 程序程序2 2 1000.00 1000.00 10.00 10.00 20.0020.000.50 0.50 0.091 0.091 0.001 0.001 加權算術加權算術平均值平均值A Am m(1 1) 500.50 500.50 10.00 10.00 20.0020.00加權算術加權算術平均值平均值A Am m(2 2) 91.91 91.91 10.00 10.00 20.0020.00加權算術加權算術平均值平均值A Am m(3 3) 2.00 2.00 10.00 10.0
40、0 20.0020.00兩個程序在A、B、C三臺計算機上的執(zhí)行時間4646/77/771.3 定量分析技術如何比較這3臺計算機的性能呢?從該表可以得出:執(zhí)行程序執(zhí)行程序1:1:qA A機機的速度是的速度是B B機機的的1010倍倍qA A機機的速度是的速度是C C機機的的2020倍倍qB B機機的速度是的速度是C C機機的的2 2倍倍執(zhí)行程序執(zhí)行程序2:2:qB B機機的速度是的速度是A A機機的的100100倍倍qC C機機的速度是的速度是A A機機的的5050倍倍qB B機機的速度是的速度是C C機機的的2 2倍倍4747/77/771.3 定量分析技術總執(zhí)行時間:計算機執(zhí)行所有測試程序的
41、總時間qB B機機執(zhí)行程序執(zhí)行程序1 1和程序和程序2 2的速度是的速度是A A機機的的50.0550.05倍倍qC C機機執(zhí)行程序執(zhí)行程序1 1和程序和程序2 2的速度是的速度是A A機機的的24.0224.02倍倍qB B機機執(zhí)行程序執(zhí)行程序1 1和程序和程序2 2的速度是的速度是C C機機的的2 2倍倍平均執(zhí)行時間:各測試程序執(zhí)行時間的算術平均值其中其中,T Ti i:第:第i i個測試程序的執(zhí)行時間個測試程序的執(zhí)行時間 n n:測試程序組中程序的個數:測試程序組中程序的個數 niimTnS114848/77/771.3 定量分析技術加權執(zhí)行時間:各測試程序執(zhí)行時間的加權平均值其中,其中
42、,W Wi i:第:第i i個測試程序在測試程序組中所占的比重個測試程序在測試程序組中所占的比重 T Ti i:該程序的執(zhí)行時間:該程序的執(zhí)行時間niiimTWA111niiW4949/77/771.4 計算機系統(tǒng)結構的發(fā)展1.4.1 馮諾依曼結構 運算器 (ALU) 控制器 存儲器 數數據據流流 控控制制流流 輸輸入入 指指令令流流 輸入 設備 輸輸出出 輸出 設備 存儲程序計算機的結構存儲程序計算機的結構 5050/77/771.4 計算機系統(tǒng)結構的發(fā)展1. 存儲程序原理的基本點:指令驅動程序預先存放在計算機存儲器中,計算機一旦啟動,就能按照程序指定的邏輯順序執(zhí)行這些程序,自動完成由程序所
43、描述的處理工作。2. 馮諾依曼結構的主要特點以運算器為中心。在存儲器中,指令和數據同等對待。 指令和數據一樣可以進行運算,即由指令組成的程指令和數據一樣可以進行運算,即由指令組成的程序是可以修改的。序是可以修改的。存儲器是按地址訪問、按順序線性編址的一維結 構,每個單元的位數是固定的。5151/77/771.4 計算機系統(tǒng)結構的發(fā)展指令的執(zhí)行是順序的。q一般是按照指令在存儲器中存放的順序執(zhí)行。一般是按照指令在存儲器中存放的順序執(zhí)行。q程序的分支由轉移指令實現(xiàn)。程序的分支由轉移指令實現(xiàn)。q由指令計數器由指令計數器PCPC指明當前正在執(zhí)行的指令在存儲器指明當前正在執(zhí)行的指令在存儲器 中的地址。中的
44、地址。指令由操作碼和地址碼組成。指令和數據均以二進制編碼表示,采用二進制運算。5252/77/771.4 計算機系統(tǒng)結構的發(fā)展3. 對系統(tǒng)結構進行的改進輸入/輸出方式的改進采用并行處理技術 q如何挖掘傳統(tǒng)機器中的并行性?如何挖掘傳統(tǒng)機器中的并行性?q在不同的級別采用并行技術。在不同的級別采用并行技術。 例如,微操作級、指令級、線程級、進程級、任務級等。例如,微操作級、指令級、線程級、進程級、任務級等。 程序控制程序控制 輸入輸出方式輸入輸出方式 DMA I/O 處理機處理機 程序等待程序等待 程序中斷程序中斷 成組傳遞成組傳遞 周期挪用周期挪用 通道通道 外圍處理機外圍處理機 5353/77/
45、771.4 計算機系統(tǒng)結構的發(fā)展存儲器組織結構的發(fā)展q相聯(lián)存儲器與相聯(lián)處理機相聯(lián)存儲器與相聯(lián)處理機q通用寄存器組通用寄存器組q高速緩沖存儲器高速緩沖存儲器CacheCache指令集的發(fā)展 兩個發(fā)展方向:q復雜指令集計算機(復雜指令集計算機(CISCCISC)q精減指令集計算機(精減指令集計算機(RISCRISC)5454/77/771.4 計算機系統(tǒng)結構的發(fā)展軟件的可移植性:一個軟件可以不經修改或者只 需少量修改就可以由一臺計算機移植到另一臺計算機上正確地運行。差別只是執(zhí)行時間的不同。 我們稱這兩臺計算機是軟件兼容的。實現(xiàn)可移植性的常用方法 采用系列機,模擬與仿真,統(tǒng)一高級語言采用系列機,模擬
46、與仿真,統(tǒng)一高級語言 。1.4.2 軟件對系統(tǒng)結構的影響 5555/77/771. 系列機 由同一廠家生產的具有相同的系統(tǒng)結構,但具有不同組成和實現(xiàn)的一系列不同型號的機器。q較好地解決軟件開發(fā)要求系統(tǒng)結構相對穩(wěn)定與器較好地解決軟件開發(fā)要求系統(tǒng)結構相對穩(wěn)定與器 件、硬件技術迅速發(fā)展的矛盾。件、硬件技術迅速發(fā)展的矛盾。軟件兼容 時間時間 機器檔次機器檔次 高高 低低 向上兼容向上兼容 向下兼容向下兼容 向前兼容向前兼容 向后兼容向后兼容 當前機器當前機器 1.4 計算機系統(tǒng)結構的發(fā)展5656/77/771.4 計算機系統(tǒng)結構的發(fā)展q向上(下)兼容:向上(下)兼容:按某檔機器編制的程序,不加修改按某
47、檔機器編制的程序,不加修改 就能運行于比它高(低)檔的機器。就能運行于比它高(低)檔的機器。q向前(后)兼容:向前(后)兼容:按某個時期投入市場的某種型號機按某個時期投入市場的某種型號機 器編制的程序,不加修改地就能運行于在它之前器編制的程序,不加修改地就能運行于在它之前 (后)投入市場的機器。(后)投入市場的機器。 向后兼容是系列機的根本特征。兼容機:由不同公司廠家生產的具有相同系統(tǒng)結 構的計算機 。5757/77/771.4 計算機系統(tǒng)結構的發(fā)展2. 模擬和仿真使軟件能在具有不同系統(tǒng)結構的機器之間相互移植。q在一種系統(tǒng)結構上實現(xiàn)另一種系統(tǒng)結構。在一種系統(tǒng)結構上實現(xiàn)另一種系統(tǒng)結構。q從指令集
48、的角度來看,就是要在一種機器上實現(xiàn)從指令集的角度來看,就是要在一種機器上實現(xiàn) 另一種機器的指令集。另一種機器的指令集。模擬:用軟件的方法在一臺現(xiàn)有的機器(稱為宿主機)上實現(xiàn)另一臺機器(稱為虛擬機)的指令集。q通常用解釋的方法來實現(xiàn)。通常用解釋的方法來實現(xiàn)。q運行速度較慢,性能較差。運行速度較慢,性能較差。5858/77/771.4 計算機系統(tǒng)結構的發(fā)展仿真:用一臺現(xiàn)有機器(宿主機)上的微程序 去解釋實現(xiàn)另一臺機器(目標機)的指令集。q運行速度比模擬方法的快運行速度比模擬方法的快q仿真只能在系統(tǒng)結構差距不大的機器之間使用仿真只能在系統(tǒng)結構差距不大的機器之間使用3. 統(tǒng)一高級語言 實現(xiàn)軟件移植的一
49、種理想的方法較難實現(xiàn)5959/77/771.4 計算機系統(tǒng)結構的發(fā)展1. 摩爾定律 集成電路芯片上所集成的晶體管數目每隔18個月就翻一番。2. 計算機的分代主要以器件作為劃分標準。它們在器件、系統(tǒng)結構和軟件技術等方面都有各 自的特征。SMP:對稱式共享存儲器多處理機 MPP:大規(guī)模并行處理機 1.4.3 器件發(fā)展對系統(tǒng)結構的影響 分代 器件特征 結構特征 軟件特征 典型實例 第一代第一代(1945195419451954年)年) 電子管和繼電器電子管和繼電器 存儲程序計算機存儲程序計算機程序控制程序控制I/O I/O 機器語言機器語言匯編語言匯編語言 普林斯頓普林斯頓ISAISA,ENIACE
50、NIAC,IBM 701 IBM 701 第二代第二代(1955196419551964年)年) 晶體管、磁芯晶體管、磁芯印刷電路印刷電路 浮點數據表示浮點數據表示尋址技術尋址技術中斷、中斷、I/OI/O處理機處理機 高級語言和編譯高級語言和編譯批處理監(jiān)控系統(tǒng)批處理監(jiān)控系統(tǒng) Univac LAPCUnivac LAPC,CDC 1604CDC 1604,IBM 7030 IBM 7030 第三代第三代(1965197419651974年)年) SSISSI和和MSIMSI多層印刷電路多層印刷電路微程序微程序 流水線、流水線、CacheCache先行處理先行處理系列機系列機 多道程序多道程序分時
51、操作系統(tǒng)分時操作系統(tǒng) IBM 360/370IBM 360/370,CDC 6600/7600CDC 6600/7600,DEC PDP-8 DEC PDP-8 第四代第四代(1975199019751990年)年) LSILSI和和VLSIVLSI半導體存儲器半導體存儲器 向量處理向量處理分布式存儲器分布式存儲器 并行與分布處理并行與分布處理 Cray-1Cray-1,IBM IBM 30903090,DEC VAX DEC VAX 90009000,Convax-1Convax-1第五代第五代(19911991年年) 高性能微處理器高性能微處理器高密度電路高密度電路超標量、超流水超標量、超
52、流水SMPSMP、MPMP、MPPMPP機群機群 大規(guī)模、可擴展大規(guī)模、可擴展并行與分布處理并行與分布處理 SGI Cray T3ESGI Cray T3E,IBM SP2IBM SP2,DECDECAlphaServer AlphaServer 8400 8400 6161/77/771.4 計算機系統(tǒng)結構的發(fā)展1. 不同的應用對計算機系統(tǒng)結構的設計提出了不同的要求2. 應用需求是促使計算機系統(tǒng)結構發(fā)展的最根本的動力3. 一些特殊領域:需要高性能的系統(tǒng)結構 高結構化的數值計算氣象模型、流體動力學、有限元分析氣象模型、流體動力學、有限元分析非結構化的數值計算蒙特卡洛模擬、稀疏矩陣蒙特卡洛模擬、
53、稀疏矩陣實時多因素問題語音識別、圖像處理、計算機視覺語音識別、圖像處理、計算機視覺1.4.4 應用對系統(tǒng)結構的影響 6262/77/771.4 計算機系統(tǒng)結構的發(fā)展大存儲容量和輸入輸出密集的問題數據庫系統(tǒng)、事務處理系統(tǒng)數據庫系統(tǒng)、事務處理系統(tǒng)圖形學和設計問題計算機輔助設計計算機輔助設計人工智能面向知識的系統(tǒng)、推理系統(tǒng)等面向知識的系統(tǒng)、推理系統(tǒng)等4. 計算機性能隨時間下移 6363/77/771.4 計算機系統(tǒng)結構的發(fā)展1. 系統(tǒng)結構的生命周期:從誕生、發(fā)展、成熟到消亡從硬件成熟到系統(tǒng)軟件成熟大約需要57年的時間從系統(tǒng)軟件成熟到應用軟件成熟,大約也需要57年時間。再過57年的時間,這種系統(tǒng)結構就
54、不會作為主流系統(tǒng)結構存在了。2. Intel的x86系列微處理器中32位系統(tǒng)結構的發(fā)展1.4.5 系統(tǒng)結構的生命周期 6464/77/771.4 計算機系統(tǒng)結構的發(fā)展 硬硬件件 系系統(tǒng)統(tǒng)軟軟件件 應應用用軟軟件件 57年年 57年年 一一般般發(fā)發(fā)展展 80386:1985 Windows32:1992 Windows 98 普普及及: 1998 32位位x86(IA-32) Iantium:2003 IA-64系系統(tǒng)統(tǒng)軟軟件件:? IA-64應應用用:? IA-64 消消亡亡 57年年 64位位x86出出現(xiàn)現(xiàn):2003 6565/77/771. 并行性:計算機系統(tǒng)在同一時刻或者同一時間間隔內
55、進行多種運算或操作。只要在時間上相互重疊,就存在并行性。只要在時間上相互重疊,就存在并行性。同時性:兩個或兩個以上的事件在同一時刻發(fā)生。并發(fā)性:兩個或兩個以上的事件在同一時間間隔 內發(fā)生。 1.5 計算機系統(tǒng)結構中并行性的發(fā)展1.5.1 并行性的概念 6666/77/771.5 計算機系統(tǒng)結構中并行性的發(fā)展2. 從處理數據的角度來看,并行性等級從低到高可分為:字串位串:每次只對一個字的一位進行處理。 最基本的串行處理方式,不存在并行性。最基本的串行處理方式,不存在并行性。字串位并:同時對一個字的全部位進行處理,不 同字之間是串行的。 開始出現(xiàn)并行性。開始出現(xiàn)并行性。字并位串:同時對許多字的同一
56、位(稱為位片) 進行處理。 具有較高的并行性。具有較高的并行性。全并行:同時對許多字的全部位或部分位進行處理。 最高一級的并行。最高一級的并行。6767/77/771.5 計算機系統(tǒng)結構中并行性的發(fā)展3. 從執(zhí)行程序的角度來看,并行性等級從低到高可分為:指令內部并行:單條指令中各微操作之間的并行。指令級并行:并行執(zhí)行兩條或兩條以上的指令。線程級并行:并行執(zhí)行兩個或兩個以上的線程。 通常是以一個進程內派生的多個線程為調度單位。通常是以一個進程內派生的多個線程為調度單位。任務級或過程級并行:并行執(zhí)行兩個或兩個以上 的過程或任務(程序段) 以子程序或進程為調度單元。以子程序或進程為調度單元。作業(yè)或程
57、序級并行:并行執(zhí)行兩個或兩個以上的 作業(yè)或程序。 6868/77/771.5 計算機系統(tǒng)結構中并行性的發(fā)展三種途徑:1. 時間重疊 引入時間因素,讓多個處理過程在時間上相互錯開,輪流重疊地使用同一套硬件設備的各個部分,以加快硬件周轉而贏得速度。2. 資源重復 引入空間因素,以數量取勝。通過重復設置硬件資源,大幅度地提高計算機系統(tǒng)的性能。1.5.2 提高并行性的技術途徑 6969/77/771.5 計算機系統(tǒng)結構中并行性的發(fā)展3. 資源共享 這是一種軟件方法,它使多個任務按一定時間順序輪流使用同一套硬件設備。 7070/77/771.5 計算機系統(tǒng)結構中并行性的發(fā)展1. 在發(fā)展高性能單處理機過程中,起主導作用的是時間 重疊原理。實現(xiàn)時間重疊的基礎:部件功能專用化q把一件工作按功能分割為若干相互聯(lián)系的部分;把一件工作按功能分割為若干相互聯(lián)系的部分;q把每一部分指定給專門的部件完成;把每一部分指定給專門的部件完成;q按時間重疊原理把各部分的執(zhí)行過程在時間上按時間重疊原理把各部分的執(zhí)行過程在時間上 重疊起來,使所有部件依次分工完成一組同樣的工作。重疊起來,使所有部件依次分工完成一組同樣的工作。1.5.3 單
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年綠化養(yǎng)護與環(huán)保材料應用服務合同范本3篇
- 2024年鉆機深孔作業(yè)項目承包協(xié)議模板版B版
- 2024年生態(tài)旅游區(qū)開發(fā)與保護合同
- 二零二五年度辦公用品環(huán)保認證與市場推廣合作合同2篇
- 2024版合同管理與工程造價之間的關系
- 2025年度消防系統(tǒng)升級改造項目勞務合同勞動廳規(guī)范3篇
- 2024年中國熒光工作服市場調查研究報告
- 2025年度木材加工廠租賃合同范本-木材加工原材料供應協(xié)議3篇
- 2025年度網絡安全風險評估與安全策略制定服務合同
- 2024年中國芒果派市場調查研究報告
- 物業(yè)品質督導述職報告
- 2024年山東濟南軌道交通集團有限公司招聘筆試參考題庫含答案解析
- 療愈行業(yè)現(xiàn)狀分析
- 北京海淀區(qū)2023-2024學年六年級上學期期末數學數學試卷
- 2023年安全總監(jiān)年終工作總結
- 浙江省杭州拱墅區(qū)2023-2024學年六年級上學期期末語文試題
- 以消費者為中心:提升營銷效果的技巧
- 部編版四年級道德與法治上冊期末復習計劃
- 獸用疫苗管理制度
- 2023瑞幸員工合同協(xié)議書
- 大氣數據測試儀校準規(guī)范
評論
0/150
提交評論