計(jì)算機(jī)體系結(jié)構(gòu)概論ppt課件_第1頁(yè)
計(jì)算機(jī)體系結(jié)構(gòu)概論ppt課件_第2頁(yè)
計(jì)算機(jī)體系結(jié)構(gòu)概論ppt課件_第3頁(yè)
計(jì)算機(jī)體系結(jié)構(gòu)概論ppt課件_第4頁(yè)
計(jì)算機(jī)體系結(jié)構(gòu)概論ppt課件_第5頁(yè)
已閱讀5頁(yè),還剩82頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、復(fù)旦大學(xué)計(jì)算機(jī)信息技術(shù)系,計(jì)算機(jī)體系結(jié)構(gòu),1.計(jì)算機(jī)直1946年發(fā)明以來(lái),性能大幅度提高 表現(xiàn)在: 運(yùn)行速度、功能、規(guī)模、可靠性等指標(biāo)的 不斷提高 體積、功耗等指標(biāo)的不斷下降。 2. 計(jì)算機(jī)性能的高速增長(zhǎng)受益于: 電路技術(shù)的發(fā)展 體系結(jié)構(gòu)技術(shù)的發(fā)展 其他因素(OS, Compiler 的發(fā)展),第一章 計(jì)算機(jī)體系結(jié)構(gòu)的基本概念,1.1 引論,3.八十年代后,有兩種技術(shù)使得體系結(jié)構(gòu)技術(shù)對(duì)計(jì)算機(jī)性能發(fā)展的影響越來(lái)越大: 1)RISC技術(shù) - 使得體系結(jié)構(gòu)的發(fā)展空間一下 子被打開; 2)微處理器技術(shù)- 使得設(shè)計(jì)新型體系結(jié)構(gòu)的風(fēng) 險(xiǎn)、成本、耗時(shí)都大為降低。 結(jié)果: 體系結(jié)構(gòu)對(duì)計(jì)算機(jī)性能發(fā)展的影響更為明

2、顯,達(dá)到80%以上,并且體系結(jié)構(gòu)的發(fā)展帶動(dòng)芯片技術(shù)、編譯技術(shù)的進(jìn)步,使得計(jì)算機(jī)的發(fā)展速度達(dá)到每年50%以上。,1.2.1 計(jì)算機(jī)系統(tǒng)中的層次概念 計(jì)算機(jī)系統(tǒng)是軟件硬件/固件 復(fù)雜性 當(dāng)考察它時(shí),通常需要選擇某種合適的 角度; 同一臺(tái)計(jì)算機(jī)在不同人眼里可以是不一 樣的。 例如:系統(tǒng)設(shè)計(jì)者和高級(jí)語(yǔ)言使用者。,1.2 計(jì)算機(jī)體系結(jié)構(gòu)的概念,2.考查計(jì)算機(jī)通常從計(jì)算機(jī)語(yǔ)言的使用者角度進(jìn)行 一般: 一個(gè)計(jì)算機(jī)系統(tǒng)所支持的計(jì)算機(jī)語(yǔ)言由低級(jí)到高級(jí) 有多個(gè)層面,高一級(jí)語(yǔ)言的語(yǔ)句相對(duì)于低級(jí)語(yǔ)言功 能更強(qiáng),更便于應(yīng)用,但又都以低級(jí)語(yǔ)言為基礎(chǔ)。 因此: 從計(jì)算機(jī)語(yǔ)言的角度,把計(jì)算機(jī)系統(tǒng)按功能劃分成 多級(jí)層次結(jié)構(gòu):,

3、概念: 虛擬機(jī):由軟件實(shí)現(xiàn)的機(jī)器。 (2) 語(yǔ)言實(shí)現(xiàn)的兩種基本技術(shù) 翻譯:先把N+1級(jí)程序全部變換成N級(jí)程序后, 再去執(zhí)行新產(chǎn)生的N級(jí)程序,在執(zhí)行過程中N+1 級(jí)程序不再被訪問。 解釋:每當(dāng)一條N+1級(jí)指令被譯碼后,就直接 去執(zhí)行一串等效的N級(jí)指令,然后再去取下一 條N+1級(jí)的指令,依此重復(fù)進(jìn)行。,一般: 解釋執(zhí)行比翻譯花的時(shí)間多,但存儲(chǔ)空間占用較少。,1.2.2 計(jì)算機(jī)體系結(jié)構(gòu) 計(jì)算機(jī)體系結(jié)構(gòu)的定義:分經(jīng)典和廣義兩種 經(jīng)典定義(Amdahl于1964年提出): 程序員所看到的計(jì)算機(jī)的屬性,即概念性 結(jié)構(gòu)與功能特性。 由于: 按照計(jì)算機(jī)系統(tǒng)的多級(jí)層次結(jié)構(gòu),不同級(jí)程序 員所看到的計(jì)算機(jī)具有不同的

4、屬性。 因此: 同一個(gè)計(jì)算機(jī)系統(tǒng)在不同層面上有不同的體系結(jié) 構(gòu)。,但一般: Amdahl提出的體系結(jié)構(gòu)-傳統(tǒng)機(jī)器級(jí)的體系結(jié)構(gòu), 即一般所說的機(jī)器語(yǔ)言程序員所看到的傳統(tǒng)機(jī)器級(jí) 所具有的屬性。 2.體系結(jié)構(gòu)概念包含內(nèi)容,對(duì)于通用寄存器型機(jī)器,這些屬性主要是指:,(1) 數(shù)據(jù)表示 (硬件能直接辯認(rèn)和處理的數(shù)據(jù)類型) (2) 尋址規(guī)則 (包括最小尋址單元、尋址方式及其表示) (3) 寄存器定義 (包括各種寄存器的定義、數(shù)量和使用方式),(4) 指令集 (包括機(jī)器指令的操作類型和格式、指令間的排 序和控制機(jī)構(gòu)等) (5) 中斷系統(tǒng) (中斷的類型和中斷響應(yīng)硬件的功能等) (6) 機(jī)器工作狀態(tài)的定義和切換

5、(如管態(tài)和目態(tài)等) (7) 存儲(chǔ)系統(tǒng) (主存容量、程序員可用的最大存儲(chǔ)容量等),(8) 信息保護(hù) (包括信息保護(hù)方式和硬件對(duì)信息保護(hù)的支持) (9) I/O結(jié)構(gòu) (包括I/O聯(lián)結(jié)方式、處理機(jī)/存儲(chǔ)器與I/O設(shè)備 間數(shù)據(jù)傳送的方式和格式以及I/O操作的狀態(tài)等),經(jīng)典計(jì)算機(jī)體系結(jié)構(gòu)概念的實(shí)質(zhì): 計(jì)算機(jī)系統(tǒng)中軟硬件界面的確定,其界面之上的是軟件的功能,界面之下的是硬件和固件的功能。,廣義體系結(jié)構(gòu)概念?,1.2.3 計(jì)算機(jī)組成和計(jì)算機(jī)實(shí)現(xiàn)技術(shù) 1. 計(jì)算機(jī)組成:計(jì)算機(jī)體系結(jié)構(gòu)的邏輯實(shí)現(xiàn)。 2. 計(jì)算機(jī)實(shí)現(xiàn):計(jì)算機(jī)組成的物理實(shí)現(xiàn)。,計(jì)算機(jī)組成包括的內(nèi)容可以有: 處理機(jī)、主存等部件的邏輯結(jié)構(gòu),機(jī)器級(jí)內(nèi)數(shù)據(jù)

6、流和控制流的組成、各部件的功能以及之間的聯(lián)系等。 計(jì)算機(jī)實(shí)現(xiàn)包括的內(nèi)容可以有: 處理機(jī)、主存等部件的物理結(jié)構(gòu),包括器件的集成度和速度的確定,器件、模塊、插件、底板的劃分與連接,組裝裝配技術(shù)及信號(hào)連接、電源、冷卻方法等。,體系結(jié)構(gòu)與組成、實(shí)現(xiàn)之間的關(guān)系為: 體系結(jié)構(gòu)是組成的抽象,組成是實(shí)現(xiàn)的抽象 一種體系結(jié)構(gòu)可以有多種組成。 一種組成可以有多種物理實(shí)現(xiàn)。 廣義的計(jì)算機(jī)體系結(jié)構(gòu)概念包括體系結(jié)構(gòu)的外部特性和內(nèi)部特性: 計(jì)算機(jī)體系結(jié)構(gòu)外部特性-計(jì)算機(jī)體系結(jié)構(gòu)的經(jīng) 典定義 計(jì)算機(jī)體系結(jié)構(gòu)內(nèi)部特性-計(jì)算機(jī)組成與實(shí)現(xiàn)中 一些比較抽象的內(nèi)容,廣義體系結(jié)構(gòu)概念: 體系結(jié)構(gòu)經(jīng)典定義 + 計(jì)算機(jī)組成和實(shí)現(xiàn)中的部分比

7、較抽象的概念。,系列機(jī) 在一個(gè)廠家內(nèi)生產(chǎn)的具有相同的體系結(jié)構(gòu)(經(jīng)典定義),但具有不同組成和實(shí)現(xiàn)的一系列不同型號(hào)的機(jī)器。 例如 IBM 370系列有370/115、125、135、145、158、168等一系列從低速到高速的各種型號(hào)。 相同點(diǎn): 程序員所看到的概念性結(jié)構(gòu)和功能屬性 指令系統(tǒng)一致 不同點(diǎn): 組成和實(shí)現(xiàn)技術(shù) 速度特性不一樣,系列機(jī)是否必須體系結(jié)構(gòu)的嚴(yán)格一致? 事實(shí)上,真正需要的是軟件兼容而非體系結(jié)構(gòu)的嚴(yán)格一致。 軟件兼容: 同一個(gè)軟件可以不加修改地運(yùn)行于另一臺(tái)機(jī)器,而且它們所獲得的結(jié)果一樣,差別只在于有不同的運(yùn)行時(shí)間。 分四類: 向上兼容:按某檔機(jī)器編制的程序,不加修改的就能運(yùn)行于比

8、它高檔的機(jī)器。,向下兼容:按某檔機(jī)器編制的程序,不加修改的就能運(yùn)行于比它低檔的機(jī)器。 向前兼容:按某個(gè)時(shí)期投入市場(chǎng)的某種型號(hào)機(jī)器編制的程序,不加修改地就能運(yùn)行于在它之前投入市場(chǎng)的機(jī)器。 向后兼容:按某個(gè)時(shí)期投入市場(chǎng)的某種型號(hào)機(jī)器編制的程序,不加修改地就能運(yùn)行于在它之后投入市場(chǎng)的機(jī)器。,這四種屬性中,我們通常只堅(jiān)持向后兼容,這表示系列機(jī)中后續(xù)各檔的機(jī)器的體系結(jié)構(gòu)可以以擴(kuò)充的方式進(jìn)行發(fā)展,這是系列機(jī)的根本特征。 IBM PC系列機(jī) (處理器、處理器字寬、I/O總線、地址空間、 尋址方式和計(jì)算機(jī)結(jié)構(gòu)),PC系列機(jī)特性比較,兼容機(jī) 不同廠家生產(chǎn)的具有相同體系結(jié)構(gòu)的計(jì)算機(jī) 這使得多個(gè)硬件生產(chǎn)廠商可以共享

9、軟件成果。,1.3計(jì)算機(jī)體系結(jié)構(gòu)的發(fā)展,1.3.1 存儲(chǔ)程序計(jì)算機(jī)體系結(jié)構(gòu)及其發(fā)展 存儲(chǔ)程序計(jì)算機(jī)的結(jié)構(gòu)是由馮諾依曼等人提出的,當(dāng)今的計(jì)算機(jī)體系結(jié)構(gòu)基本上仍是馮諾依曼計(jì)算機(jī)結(jié)構(gòu),它的基本結(jié)構(gòu)如下:,1. 存儲(chǔ)程序計(jì)算機(jī)的主要特點(diǎn),(1) 機(jī)器以運(yùn)算器為中心。 (2) 采用存儲(chǔ)程序原理. (3) 存儲(chǔ)器是按地址訪問的、線性編址的空間。 (4) 控制流由指令流產(chǎn)生 . (5) 指令由操作碼和地址碼組成。 (6) 數(shù)據(jù)以二進(jìn)制編碼表示,采用二進(jìn)制運(yùn)算。,2. 對(duì)體系結(jié)構(gòu)進(jìn)行的改進(jìn),(1) 分布的I/O處理能力 以運(yùn)算器為中心帶來(lái)了慢速輸入輸出操作 占用快速運(yùn)算器的問題。,(2) 保護(hù)的存儲(chǔ)器空間,是

10、否把指令和數(shù)據(jù)放在同一存儲(chǔ)器中? 優(yōu)點(diǎn) :,不必預(yù)先區(qū)分指令和數(shù)據(jù),易實(shí)現(xiàn)存儲(chǔ)管理軟件. 程序和指令在執(zhí)行過程中可以被修改,因而可以 編寫出靈活的可修改的程序. 對(duì)于存取指令和數(shù)據(jù)僅需一套讀寫和尋址電路, 硬件簡(jiǎn)單. 數(shù)據(jù)可以分配于任何可用空間,從而可更有效地 利用存儲(chǔ)空間等.,缺點(diǎn):,不利于進(jìn)行程序調(diào)試診斷; 不利于實(shí)現(xiàn)程序的可再入性和程序的遞歸調(diào)用; 不利于重疊和流水方式的操作。,現(xiàn)在絕大多數(shù)計(jì)算機(jī)都規(guī)定,在執(zhí)行進(jìn)程中不準(zhǔn)修改程序。,(3) 存儲(chǔ)器組織結(jié)構(gòu)的發(fā)展,相聯(lián)存儲(chǔ)器:支持內(nèi)容查找 堆棧的引入:支持高級(jí)語(yǔ)言過程調(diào)用、遞歸機(jī)制以 及表達(dá)式計(jì)算 通用寄存器:提高運(yùn)行速度 高速緩沖存儲(chǔ)器和

11、多級(jí)存儲(chǔ)器組織結(jié)構(gòu):提高運(yùn)行 速度并降低成本 虛擬存儲(chǔ)器:方便高級(jí)語(yǔ)言編程,(4) 并行處理技術(shù) CPU內(nèi)部的并行,重迭方式 先行控制,多操作部件 流水方式, 在體系結(jié)構(gòu)上把本來(lái)可并行計(jì)算的題目使之能并 行計(jì)算。 如向量計(jì)算 多機(jī)并行處理系統(tǒng) 把一個(gè)作業(yè)(程序)劃分成能并行執(zhí)行的多個(gè) 任務(wù)(程序段),把每個(gè)任務(wù)分配給一個(gè)處理機(jī)執(zhí)行。,復(fù)雜指令集計(jì)算機(jī)(CISC) 精簡(jiǎn)指令集計(jì)算機(jī)(RISC),(5) 指令集結(jié)構(gòu)的發(fā)展 指令集的功能 :,指令的地址空間和尋址方式 : 多種靈活的尋址方式。,1.3.2 計(jì)算機(jī)的分代和分型 1. 計(jì)算機(jī)到目前為止已經(jīng)發(fā)展了五代 這五代計(jì)算機(jī)分別具有明顯的器件、體系結(jié)

12、 構(gòu)技術(shù)和軟件技術(shù)的特征。 2. 計(jì)算機(jī)可以根據(jù)價(jià)格分為五個(gè)檔次: 巨型機(jī)、大型機(jī)、中型機(jī)、小型機(jī)、微型機(jī),3. 計(jì)算機(jī)系統(tǒng)性能隨時(shí)間“下移”,4. 新型體系結(jié)構(gòu)發(fā)展的基本趨勢(shì) (1) 合理地增加計(jì)算機(jī)系統(tǒng)中硬件的功能比例, 這種體系結(jié)構(gòu)對(duì)操作系統(tǒng)、高級(jí)語(yǔ)言甚至應(yīng) 用軟件提供更多更好的支持; (2) 通過多種途徑提高計(jì)算機(jī)體系結(jié)構(gòu)中的并行 性等級(jí),使得凡是能并行計(jì)算和處理的問題 都能并行計(jì)算和處理,使這種體系結(jié)構(gòu)和組 成對(duì)算法提供更多更好的支持。,1.3.3 應(yīng)用需求的發(fā)展 應(yīng)用對(duì)體系結(jié)構(gòu)的基本要求是高的運(yùn)算速度、大的存儲(chǔ)量、大的I/O吞吐量 1. 計(jì)算機(jī)的設(shè)計(jì)受兩方面因素的影響 2. 軟件技

13、術(shù)的發(fā)展趨勢(shì) (1) 程序及數(shù)據(jù)所使用存儲(chǔ)器容量的不斷增大; (2) 編譯器的重要性日益突出,逐漸成為用戶 與計(jì)算機(jī)的主要界面。,計(jì)算機(jī)現(xiàn)在和未來(lái)的使用方法 下層的實(shí)現(xiàn)技術(shù),1.3.4 計(jì)算機(jī)實(shí)現(xiàn)技術(shù)的發(fā)展,邏輯電路 速度的不斷提高 集成度的不斷提高 主頻的提高(2GHz)、 64位- 128位機(jī)器的可能性 成本的下降門級(jí) 寄存器級(jí) 部件級(jí) 系統(tǒng)級(jí)均在一個(gè)VLSI芯片中實(shí)現(xiàn)(如FPGA器件) 物理實(shí)現(xiàn)、邏輯組成和體系結(jié)構(gòu)之間的差別模糊化,對(duì)編譯的支持已成為應(yīng)用對(duì)體系結(jié)構(gòu)的一個(gè)基本要求。,半導(dǎo)體DRAM(動(dòng)態(tài)隨機(jī)訪問存儲(chǔ)器) 密度每三年增長(zhǎng)四倍 訪問時(shí)間每10年減少1/3 通過接口的變化改善帶寬

14、,磁盤 密度每年增長(zhǎng)50% 訪問時(shí)間每10年減少1/3,1.3.5 體系結(jié)構(gòu)的生命周期,一般分成四個(gè)階段:誕生 發(fā)展 成熟 消亡,硬件的出現(xiàn) 系統(tǒng)軟件的成熟 大量的應(yīng)用軟件 被新的體系結(jié)構(gòu)取代,任何一個(gè)體系結(jié)構(gòu)都有其生命周期。,1.4計(jì)算機(jī)體系結(jié)構(gòu)中并行性的發(fā)展,1.4.1并行性概念 1.并行性 指在同一時(shí)刻或是同一時(shí)間間隔內(nèi)完成兩種或兩種以上性質(zhì)相同或不相同的工作。 只要時(shí)間上互相重迭,就存在并行性。, 同時(shí)性 兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生 并發(fā)性 兩個(gè)或多個(gè)事件在在同一時(shí)間間隔內(nèi)發(fā)生,這兩類并行性從計(jì)算機(jī)性能角度來(lái)看沒有太大差別。,2. 計(jì)算機(jī)系統(tǒng)中的并行性的不同方面和等級(jí),指令內(nèi)部并行:

15、 指令內(nèi)部的微操作之間的 并行。 指令級(jí)并行: 并行執(zhí)行兩條或多條指 令。 任務(wù)級(jí)或過程級(jí)并行:并行執(zhí)行兩個(gè)或多個(gè)過程 或任務(wù)(程序段)。 作業(yè)或程序級(jí)并行: 在多個(gè)作業(yè)或程序間的并 行。,(1) 從執(zhí)行程序的角度看,并行性等級(jí)從低到 高可分為:,(2) 從處理數(shù)據(jù)的角度,并行性等級(jí)從低到高可以 分為, 字串位串: 同時(shí)只對(duì)一個(gè)字的一位進(jìn)行處理。 字串位并:同時(shí)對(duì)一個(gè)字的全部位進(jìn)行處理, 不同字之間是串行的。 字并位串:同時(shí)對(duì)許多字的同一位(稱位片)進(jìn) 行處理。 全并行: 同時(shí)對(duì)許多字的全部或部分位進(jìn)行處理。,* 程序運(yùn)行和數(shù)據(jù)處理這兩種類型的并行性并沒有直接的聯(lián)系,1.4.2 提高并行性的技

16、術(shù)途徑,1. 三種途徑 (1) 時(shí)間重迭 多個(gè)處理過程在時(shí)間上相互錯(cuò)開,輪 流重迭地使用同一套硬件設(shè)備的各個(gè)部分, 以加快硬件周轉(zhuǎn)而贏得速度。 (2) 資源重復(fù) 根據(jù)“以數(shù)量取勝”的原則,通過重復(fù) 地設(shè)置資源,尤其是硬件資源,以大幅度 提高計(jì)算機(jī)系統(tǒng)的性能。,(3) 資源共享 這是一種軟件方法,它使多個(gè)任務(wù)按一定 時(shí)間順序輪流使用同一套硬件設(shè)備。,單處理機(jī)系統(tǒng): 1)時(shí)間重迭:流水線技術(shù) 2)資源重復(fù):多操作部件處理機(jī)(加減法運(yùn)算器、 乘法器、邏輯運(yùn)算器等) 多體存儲(chǔ)器 并行處理機(jī)(一個(gè)控制器多個(gè)相 同處理單元) 陣列處理機(jī) 3)資源共享:分時(shí)系統(tǒng)-在單處理機(jī)上模擬多個(gè) 獨(dú)立系統(tǒng)的功能,2.

17、單機(jī)系統(tǒng)中并行性的發(fā)展,例如 對(duì)于解釋指令的五個(gè)過程,就分別需要五個(gè)專用的部件,即取指令部件(IF)、指令譯碼部件(ID)、指令執(zhí)行部件(EX)、訪問存儲(chǔ)器部件(M)和寫結(jié)果部件(WB)。,3. 多機(jī)系統(tǒng)中并行性的發(fā)展 (1) 耦合度 反映多機(jī)系統(tǒng)的各機(jī)器之間的物理連接 的緊密程度和交互作用能力的強(qiáng)弱。, 最低耦合 耦合度最低的系統(tǒng)。除通過某種中間存 儲(chǔ)介質(zhì)之外,各計(jì)算機(jī)之間沒有物理連接,也 無(wú)共享的聯(lián)機(jī)硬件資源。, 松散耦合或間接耦合系統(tǒng) 通過通道或通信線路實(shí)現(xiàn)計(jì)算機(jī)間互連, 共享某些外圍設(shè)備(例如磁盤、磁帶等),機(jī)間 的相互作用是在文件或數(shù)據(jù)集一級(jí)進(jìn)行。 緊密耦合系統(tǒng)或直接耦全系統(tǒng) 機(jī)間物

18、理連接的頻帶較寬,它們往往通過總 線或高速開關(guān)實(shí)現(xiàn)互連,可以共享主存。,多機(jī)系統(tǒng) (1) 時(shí)間重疊 專用外圍處理機(jī)(松散耦合系統(tǒng)) 高級(jí)語(yǔ)言編譯處理機(jī)、數(shù)據(jù)庫(kù)處理機(jī) 異構(gòu)型多處理機(jī)系統(tǒng) (2) 資源重復(fù) 容錯(cuò)多處理機(jī) ( 緊密耦合系統(tǒng) ) 同構(gòu)型多處理機(jī)系統(tǒng) (3) 資源共享 局部計(jì)算機(jī)網(wǎng)(松散耦合系統(tǒng)) 分布處理系統(tǒng),三種類型多處理機(jī)比較,1.5定量分析技術(shù)基礎(chǔ),1.5.1 計(jì)算機(jī)性能的評(píng)測(cè) 最常用的評(píng)價(jià)尺度是以時(shí)間為基礎(chǔ)的:, 響應(yīng)時(shí)間:從事件開始到結(jié)束之間的時(shí)間,也稱為執(zhí)行時(shí)間 (計(jì)算機(jī)完成某一任務(wù)所花費(fèi)的全部時(shí)間) 流量: 在單位時(shí)間內(nèi)所能完成的工作量。,相同點(diǎn):以時(shí)間為基礎(chǔ) 不同點(diǎn):

19、響應(yīng)時(shí)間針對(duì)單任務(wù),而流量針對(duì)多任務(wù) 通用評(píng)測(cè)方法: 以真實(shí)程序的響應(yīng)時(shí)間為度量。,響應(yīng)時(shí)間與性能成反比,上式變成 n = = =,1. 假設(shè)兩臺(tái)計(jì)算機(jī)為X和Y,“X比Y快”的意思是 對(duì)于給定任務(wù),X的響應(yīng)時(shí)間比Y少。 X比Y快n倍: = n,用戶CPU時(shí)間 系統(tǒng)CPU時(shí)間 系統(tǒng)性能響應(yīng)時(shí)間 CPU性能 CPU用戶時(shí)間, CPU時(shí)間: CPU工作的時(shí)間,不包含I/O等待時(shí)間 及運(yùn)行其它程序的時(shí)間。,響應(yīng)時(shí)間是指完成某一任務(wù)的全部時(shí)間,包括輸入輸出時(shí)間以及CPU切換到其他任務(wù)時(shí)所花時(shí)間無(wú)法衡量CPU的性能。,1.5.2 測(cè)試程序,目前常用的測(cè)試程序可以分為四類: (按測(cè)試可靠性由高至低的順序列出

20、) (1) 真實(shí)程序:真實(shí)使用的程序; (2) 核心程序:從真實(shí)程序中提取能反映系統(tǒng)性能的關(guān) 鍵程序段組成的程序; (3) 小測(cè)試程序:特地編寫的反映系統(tǒng)某一方面性能的 一些小程序; (4) 合成測(cè)試程序:根據(jù)對(duì)大量應(yīng)用程序中各種操作的 比例進(jìn)行統(tǒng)計(jì)后按照這個(gè)比例人為 制造出來(lái)的程序。,目前,還有一種測(cè)量方法被越來(lái)越多地采用,就是用一組各方面有代表性的真實(shí)程序和相應(yīng)的輸入來(lái)評(píng)價(jià)計(jì)算機(jī)性能,這種測(cè)評(píng)方法我們也稱為Benchmark方法. 這方面有兩個(gè)例子: (1) SPEC典型測(cè)試程序 由HP、DEC、MIPS和SUN等公司聯(lián)合推出 由GCC等十個(gè)真實(shí)程序組成 包括SPECint和SPECfp兩

21、部分組成 (2)WinBench98 基于Windows操作系統(tǒng) 從MS Word等幾十個(gè)真實(shí)程序中截取完整功能模塊組成。,1.5.3 性能設(shè)計(jì)和評(píng)價(jià)的基本原則,三條基本原則和方法:,1. 大概率事件優(yōu)先的原則 對(duì)于大概率事件(最常見的事件),賦予 它優(yōu)先的處理權(quán)和資源使用權(quán),以獲得全局的 最估結(jié)果。 2. Amdahl定律 加快某部件執(zhí)行速度所獲得的系統(tǒng)性能 加速比,受限于該部件在系統(tǒng)中所占的重要性。,定量分析,可改進(jìn)比例:該部件的原執(zhí)行時(shí)間在原系統(tǒng)總執(zhí)行時(shí)間中所占的比例,它總是小于等于. 例如: 一個(gè)需運(yùn)行60秒的程序中有20秒的運(yùn)算 可以加速,那么該比例就是20/60。,系統(tǒng)加速比 =

22、=,部件加速比:部件改進(jìn)前后執(zhí)行時(shí)間之比,一般情況下它大于。 例如: 系統(tǒng)改進(jìn)后執(zhí)行程序,其中某部分花 費(fèi)2秒的時(shí)間,而改進(jìn)前該部分需花費(fèi)5秒, 則該部分的部件加速比為5/2。,總執(zhí)行時(shí)間改進(jìn)后=(1-可改進(jìn)比例)總執(zhí)行時(shí)間改進(jìn)前 + = (1-可改進(jìn)比例) + 總執(zhí)行時(shí)間改進(jìn)前,總執(zhí)行時(shí)間改進(jìn)后 = 不可改進(jìn)部分的執(zhí)行時(shí)間 + 可改進(jìn)部分改進(jìn)后的執(zhí)行時(shí)間,系統(tǒng)加速比為改進(jìn)前與改進(jìn)后總執(zhí)行時(shí)間之比: 系統(tǒng)加速比 = =,兩種情況: 1)可改進(jìn)比例為,這時(shí)系統(tǒng)加速比等于,即系統(tǒng)性能無(wú)法提高。 2)部件加速比趨于無(wú)窮,這時(shí)分母中可改進(jìn)比例與部件加速比之比趨于,由此系統(tǒng)加速比趨于除以減可改進(jìn)比例,這

23、是加速這個(gè)部件所獲得的系統(tǒng)性能改善的極限。 (1) 推論:如果只針對(duì)整個(gè)任務(wù)的一部分進(jìn)行優(yōu)化,那么所獲得的加速比不大于1/(1-fe)。,(2) 性能遞減規(guī)則 如果僅僅對(duì)計(jì)算機(jī)中的一部分做性能改 進(jìn),則改進(jìn)越多,系統(tǒng)獲得的效果越小。 (3) 一個(gè)“好”的計(jì)算機(jī)系統(tǒng):具有高性能價(jià)比的計(jì) 算機(jī)系統(tǒng)是一個(gè)帶寬平衡的系統(tǒng),而不是看它 使用的某些部件的性能 。,3. 程序的局部性原理 程序在執(zhí)行時(shí)所訪問地址的分布不是隨機(jī) 的,而是相對(duì)地簇聚;這種簇聚同時(shí)存在于指 令訪問和數(shù)據(jù)訪問中。 程序的時(shí)間局部性:程序即將用到的信息很 可能就是目前正在使用的信息。 程序的空間局部性:程序即將用到的信息很 可能與目前

24、正在使用的信息在空間上相鄰或者 臨近。,* 程序的這種局部性原理是計(jì)算機(jī)系統(tǒng)多層存儲(chǔ)體系的基本原理依據(jù),特別是高速緩沖器Cache。,1.5.4 CPU的性能 1. 將程序執(zhí)行的時(shí)間進(jìn)行分解 (1) 計(jì)算機(jī)工作的時(shí)鐘頻率 計(jì)算機(jī)系統(tǒng)中與實(shí)現(xiàn)技術(shù)和工藝有關(guān)的因素。 單位是MHz或GHz 。 (2) 總時(shí)鐘周期數(shù),CPU時(shí)間 = 總時(shí)鐘周期數(shù) / 時(shí)鐘頻率,CPI = 總時(shí)鐘周期數(shù) / IC,CPU時(shí)間 = CPI IC / 時(shí)鐘頻率,IC:程序執(zhí)行過程中所處理的指令數(shù)。,時(shí)鐘頻率:受計(jì)算機(jī)實(shí)現(xiàn)技術(shù)和計(jì)算機(jī)組成影響 CPI:受計(jì)算機(jī)指令集結(jié)構(gòu)和計(jì)算機(jī)組成影響 IC:受計(jì)算機(jī)指令集結(jié)構(gòu)和編譯技術(shù)影響

25、 對(duì)許多CPU來(lái)說,不同的指令運(yùn)行時(shí)所用的周期數(shù)是不同的,如果我們假設(shè):計(jì)算機(jī)系統(tǒng)有n種指令,其中 CPIi : 第i種指令所用的時(shí)鐘周期數(shù); ICi : 在程序運(yùn)行過程中中第i種指令被運(yùn)行的次數(shù);,CPU時(shí)間 = (CPIi ICi) / 時(shí)鐘頻率 CPI = (CPIi ICi) / IC = (CPIi ICi / IC) 其中:(ICi / IC)反映了第i種指令在程序中所占的 比例。,i=1,i=1,i=1,n,n,n,i=1,例1.1 假設(shè)我們考慮條件分支指令的兩種不同設(shè)計(jì)方法如下:,(1) CPUA:通過比較指令設(shè)置條件碼,然后測(cè)試條 件碼進(jìn)行分支。 CPUB:在分支指令中包括比

26、較過程,在兩種CPU中,條件分支指令都占用2個(gè)時(shí)鐘周 期而所有其它指令占用1個(gè)時(shí)鐘周期,對(duì)于CPUA,執(zhí) 行的指令中分支指令占20%;由于每個(gè)分支指令之前 都需要有比較指令,因此比較指令也占20%。由于CPUA,在分支時(shí)不需要比較,因此假設(shè)它的時(shí)鐘周期時(shí)間 比CPUB快1.25倍。哪一個(gè)CPU更快?如果CPUA的時(shí)鐘 周期時(shí)間僅僅比CPUB快1.1倍,哪一個(gè)CPU更快呢?,解:我們不考慮所有系統(tǒng)問題,所以可用CPU性能公式。占用2個(gè)時(shí)鐘周期的分支指令占總指令的20%,剩下的指令占用1個(gè)時(shí)鐘周期。所以 CPIA = 0.2 2 + 0.80 1 = 1.2 則CPU性能為: 總CPU時(shí)間A =

27、IC 1.2 時(shí)鐘周期A,根據(jù)假設(shè),有: 時(shí)鐘周期B = 1.25 時(shí)鐘周期A 在CPUB中沒有獨(dú)立的比較指令,所以CPUB的程序量為CPUA的80%,分支指令的比例為: 20%/80% = 25% 這些分支指令占用2個(gè)時(shí)鐘周期,而剩下的75%的指令占用1個(gè)時(shí)鐘周期,因此: CPIB = 0.25 2 + 0.75 1 = 1.25 因?yàn)镃PUB不執(zhí)行比較,故: ICB = 0.8 ICA,因此CPUB性能為: 總CPU時(shí)間B = ICB CPIB 時(shí)鐘周期B = 0.8 ICA 1.25 (1.25 時(shí)鐘周期A) = 1.25 ICA 時(shí)鐘周期A 在這些假設(shè)之下,盡管CPUB執(zhí)行指令條數(shù)較少,CPUA因?yàn)橛兄痰臅r(shí)鐘周期,所以比CPUB快。,如果

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論