版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)主講教師:?jiǎn)尾樥n程簡(jiǎn)介課本:《計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)》同時(shí)可看的幾本中文參考書:鄭緯民,湯志忠《計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)》第二版,2006,清華大學(xué)出版社白中英《計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)》第三版,2010,科學(xué)出版社
課程成績(jī)總成績(jī)=平時(shí)成績(jī)*30%+期末成績(jī)*70%平時(shí)成績(jī)=點(diǎn)名成績(jī)+平時(shí)作業(yè)期末成績(jī)=期末考試成績(jī)外文參考書ComputerArchitecture:AQuantitativeApproachbyDavidPattersonandJohnHennessy,4thedition,MorganKaufmann,2009ComputerOrganizationandDesignbyJohnHennessyandDavidPatterson,4thedition,MorganKaufmann,2007JohnHennessy此書作者M(jìn)IPS系統(tǒng)的奠基人斯坦福大學(xué)校長(zhǎng)IEEE,ACMFellow美國(guó)國(guó)家科學(xué)院院士,美國(guó)國(guó)家工程院院士硬件專業(yè)的課程順序數(shù)字邏輯->組成原理->系統(tǒng)結(jié)構(gòu)系統(tǒng)結(jié)構(gòu)屬于專業(yè)課,著重講述并行計(jì)算機(jī)系統(tǒng)的基本概念、結(jié)構(gòu)、分析和設(shè)計(jì)方法課程目錄第1章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論基本概念并行性的發(fā)展分類性能評(píng)價(jià)第2章指令系統(tǒng)數(shù)據(jù)表示指令系統(tǒng)的優(yōu)化設(shè)計(jì)計(jì)算機(jī)指令系統(tǒng)的發(fā)展方向第3章流水線技術(shù)與向量處理技術(shù)流水線基本原理流水線性能分析流水線中的相關(guān)及處理先進(jìn)的流水線調(diào)度技術(shù)指令級(jí)并行技術(shù)向量處理技術(shù)課程目錄第4章存儲(chǔ)系統(tǒng)存儲(chǔ)系統(tǒng)及性能并行主存系統(tǒng)虛擬存儲(chǔ)器高速緩沖存儲(chǔ)器第5章并行處理機(jī)并行處理機(jī)的結(jié)構(gòu)與特點(diǎn)并行處理機(jī)的互聯(lián)網(wǎng)絡(luò)幾種典型的并行處理機(jī)第1章計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)導(dǎo)論主要介紹:計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念和多級(jí)層次結(jié)構(gòu)分析計(jì)算機(jī)系統(tǒng)結(jié)構(gòu),計(jì)算機(jī)組成與計(jì)算機(jī)實(shí)現(xiàn)的含義、研究?jī)?nèi)容及其相互關(guān)系討論計(jì)算機(jī)系統(tǒng)并行性發(fā)展的技術(shù)途徑與分類研究系統(tǒng)結(jié)構(gòu)一般的性能評(píng)價(jià)標(biāo)準(zhǔn)
1.1.1計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)計(jì)算機(jī)系統(tǒng)(computersystem)=硬件(hardware)+軟件(software)按照功能劃分成多級(jí)層次結(jié)構(gòu)M0-M6M0-M1屬于計(jì)算機(jī)組織與結(jié)構(gòu)M3-M5屬于系統(tǒng)軟件M6是應(yīng)用軟件分級(jí)有利于正確理解計(jì)算機(jī)系統(tǒng)的工作;明確軟件硬件固件的地位和作用;有利于理解各種語(yǔ)言的實(shí)質(zhì)有利于設(shè)計(jì)新的計(jì)算機(jī)系統(tǒng)語(yǔ)言實(shí)現(xiàn)的兩種基本技術(shù)翻譯(translation)解釋(interpretation)1.1.2計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)、組成和實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)(computerarchitecture)也稱為計(jì)算機(jī)體系結(jié)Amdahl--1964年在介紹IBM360系統(tǒng)時(shí)提出計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的定義:計(jì)算機(jī)體系結(jié)構(gòu)時(shí)程序設(shè)計(jì)者所看到的計(jì)算機(jī)的屬性,即概念性結(jié)構(gòu)與功能特性。不同層次的程序設(shè)計(jì)者所看到的計(jì)算機(jī)屬性顯然不同,一個(gè)計(jì)算機(jī)系統(tǒng)中,低層機(jī)器概念性結(jié)構(gòu)和功能特性對(duì)高層機(jī)器的程序設(shè)計(jì)者是透明的。研究?jī)?nèi)容包括:數(shù)據(jù)表示:數(shù)據(jù)類型和格式尋址規(guī)則:尋址方式,表示,地址計(jì)算寄存器定義:各類寄存器指令系統(tǒng):指令的操作類型個(gè)格式存儲(chǔ)系統(tǒng):編址單位、編址方式、存儲(chǔ)容量,編址空間中斷系統(tǒng):中斷類型,分級(jí),處理程序的功能,入口地址機(jī)器工作狀態(tài):定義和切換I/O系統(tǒng):I/O設(shè)備的連接方式、主機(jī)與I/O設(shè)備之間的數(shù)據(jù)傳送方式和格式、傳送的數(shù)據(jù)量以及I/O操作的結(jié)束與出錯(cuò)標(biāo)志等信息保護(hù)。包括信息保護(hù)方式和硬件對(duì)信息保護(hù)的支持計(jì)算機(jī)組成計(jì)算機(jī)組成(computerorganization)是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的邏輯實(shí)現(xiàn),包括機(jī)器內(nèi)部的數(shù)據(jù)流和控制流的組成以及邏輯設(shè)計(jì)等。計(jì)算機(jī)組成設(shè)計(jì)要確定的內(nèi)容數(shù)據(jù)通路的寬度。指在數(shù)據(jù)總線上能一次并行傳送的信息位數(shù)。專用部件的設(shè)置。包括設(shè)置哪些專用部件,如乘除法專用部件、浮點(diǎn)運(yùn)算部件、字符處理、地址運(yùn)算部件,以及每種專用部件的個(gè)數(shù)。這些都取決于機(jī)器所需達(dá)到的速度,專用部件的使用頻度及允許的價(jià)格等因素。各種操作對(duì)部件的共享程度。若部件共享程度高,則價(jià)格便宜,但會(huì)由于共享部件的分時(shí)使用而降低操作的速度;若設(shè)置多個(gè)功能部件降低共享程度,通過(guò)增加并行度以提高速度,系統(tǒng)的價(jià)格會(huì)隨之升高。功能部件的并行度。如功能部件的控制和處理方式是采用順序串行方式,還是采用重疊、流水、分布處理方式。控制機(jī)構(gòu)的組成方式。如控制機(jī)構(gòu)是采用硬聯(lián)控制還是微程序控制,是采用單機(jī)處理還是多機(jī)處理或功能分布處理。緩沖和排隊(duì)技術(shù)。包括在部件之間如何設(shè)置及設(shè)置多大容量的緩沖器來(lái)彌補(bǔ)它們的速度差異;在安排等待處理事件的順序時(shí),采用隨機(jī)、先進(jìn)先出、先進(jìn)后出、優(yōu)先級(jí)、循環(huán)隊(duì)等方式中的哪一種。預(yù)估、預(yù)判技術(shù)。如采用何種原則來(lái)預(yù)測(cè)未來(lái)行為,以優(yōu)化性能和優(yōu)化處理。可靠性技術(shù)。如采用怎樣的冗余技術(shù)和容錯(cuò)技術(shù)來(lái)提高可靠性。計(jì)算機(jī)實(shí)現(xiàn)計(jì)算機(jī)實(shí)現(xiàn)(computerimplementation)是計(jì)算機(jī)組成的物理實(shí)現(xiàn),包括處理機(jī)、主存等部件的物理結(jié)構(gòu),器件的集成度和速度,器件、模塊、插件、底板的劃分與連接,專用器件的設(shè)計(jì),微組裝技術(shù),信號(hào)傳輸,電源、冷卻及整機(jī)裝配技術(shù)等。它著眼于器件技術(shù)和微組裝技術(shù),其中,器件技術(shù)在實(shí)現(xiàn)技術(shù)中起著主導(dǎo)作用。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)、組成和實(shí)現(xiàn)三者的關(guān)系舉例機(jī)器指令集的確定屬于系統(tǒng)結(jié)構(gòu)指令的實(shí)現(xiàn),如取指令、取操作數(shù)、運(yùn)算、送結(jié)果等具體操作和排序方式屬于計(jì)算機(jī)組織乘法器,加法器的物理實(shí)現(xiàn),如器件的選定,所使用的封裝技術(shù),屬于計(jì)算機(jī)實(shí)現(xiàn)計(jì)算機(jī)等級(jí)分為巨型,大型,中型,小型,微型等若干級(jí)計(jì)算機(jī)工業(yè)在處理性能和價(jià)格的關(guān)系上可以有兩種途徑:一種是維持價(jià)格不變,充分利用器件技術(shù)等的進(jìn)展不斷提高機(jī)器的性能,即沿圖1.3中的水平實(shí)線發(fā)展;另一種是在性能基本不變的情況下,利用器件技術(shù)等的進(jìn)展不斷降低機(jī)器的價(jià)格,即沿圖1.3中虛線往下發(fā)展。系列機(jī)所謂系列機(jī)的概念,是在軟、硬件界面上設(shè)計(jì)好一種系統(tǒng)結(jié)構(gòu),然后軟件設(shè)計(jì)者按此系統(tǒng)結(jié)構(gòu)設(shè)計(jì)系統(tǒng)軟件;硬件設(shè)計(jì)者根據(jù)機(jī)器速度、性能、價(jià)格的不同,選擇不同的期間,采用不同的硬件技術(shù)和組成與實(shí)現(xiàn)技術(shù),研制并提供不同檔次的機(jī)器。在系列機(jī)上必須保證用戶看到一致的機(jī)器屬性,例如,IBMAS400系列,數(shù)據(jù)總線有16、32、64位的區(qū)別,但數(shù)據(jù)表示方式一致。系列機(jī)之間必須保持軟件兼容(softwarecompatibility)。系列機(jī)軟件兼容是指同一個(gè)軟件(目標(biāo)程序)可以不加修改地運(yùn)行于系統(tǒng)結(jié)構(gòu)相同的各檔次機(jī)器中,模擬與仿真要求在A機(jī)器上用虛擬機(jī)的概念實(shí)現(xiàn)B機(jī)器的指令系統(tǒng),如圖1.4所示,即B機(jī)器的每一條機(jī)器指令由A機(jī)器的一段機(jī)器語(yǔ)言程序去解釋執(zhí)行,從而可使B機(jī)器的程序能在A機(jī)器上運(yùn)行。這種用機(jī)器語(yǔ)言程序解釋實(shí)現(xiàn)軟件移植的方法稱為模擬(simulation),被模擬的B機(jī)器稱為虛擬機(jī)(virtualmachine),A機(jī)器稱為宿主機(jī)(hostmachine)。這種用微程序直接解釋另一種機(jī)器指令系統(tǒng)實(shí)現(xiàn)軟件移植的方法稱為仿真(emulation)。進(jìn)行仿真工作的A機(jī)器稱為宿主機(jī),被仿真的B機(jī)器稱為目標(biāo)機(jī)(targetmachine),為仿真所編寫的解釋微程序稱為仿真微程序。仿真與模擬的主要區(qū)別在于解釋所用的語(yǔ)言:仿真用微程序解釋,其解釋程序在微程序存儲(chǔ)器中,而模擬用機(jī)器語(yǔ)言解釋,其解釋程序在主存儲(chǔ)器中。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)中并行性的發(fā)展研究計(jì)算機(jī)體系結(jié)構(gòu)的目的是提高計(jì)算機(jī)系統(tǒng)的性能。開(kāi)發(fā)計(jì)算機(jī)系統(tǒng)的并行性,是計(jì)算機(jī)體系結(jié)構(gòu)的重要研究?jī)?nèi)容之一。馮·諾依曼型計(jì)算機(jī)由運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備和輸出設(shè)備五個(gè)部分組成。隨著計(jì)算機(jī)應(yīng)用領(lǐng)域的擴(kuò)大和計(jì)算機(jī)技術(shù)的發(fā)展,人們已經(jīng)逐漸認(rèn)識(shí)到早期計(jì)算機(jī)所采用的馮·諾依曼型結(jié)構(gòu)存在的問(wèn)題,不斷地對(duì)這種結(jié)構(gòu)加以改進(jìn)并開(kāi)發(fā)全新的系統(tǒng)結(jié)構(gòu)。并行性概念所謂并行性(parallelism)是指在同一時(shí)刻或是同一時(shí)間間隔內(nèi)完成兩種或兩種以上性質(zhì)相同或不相同的工作。只要時(shí)間上相互重疊,就存在并行性。嚴(yán)格來(lái)講,把兩個(gè)或多個(gè)事件在同一時(shí)刻發(fā)生的并行性叫做同時(shí)性(simultaneity);把兩個(gè)或多個(gè)事件在同一時(shí)間間隔內(nèi)發(fā)生的并行性叫做并發(fā)性(concurrency)。在進(jìn)行并行處理時(shí),其每次處理的規(guī)模大小可能是不同的,這可用并行性顆粒度(granularity)來(lái)表示。顆粒度用于衡量軟件進(jìn)程所含計(jì)算量的大小,最簡(jiǎn)單的方法是用程序段中指令的條數(shù)來(lái)表示。顆粒度一般可分為細(xì)粒度、中粒度和粗粒度三種,若程序段中指令條數(shù)小于500條,稱為細(xì)粒度,500~2000條指令之間稱為中粒度,大于2000條稱為粗粒度。并行性的等級(jí)按照并行顆粒度不同從低到高可以分為指令內(nèi)部并行。指令內(nèi)部的微操作之間的并行。指令級(jí)并行(ILP,InstructionLevelParallel)。并行執(zhí)行兩條或多條指令。任務(wù)級(jí)或過(guò)程級(jí)并行。并行執(zhí)行兩個(gè)或多個(gè)過(guò)程或任務(wù)(程序段)。作業(yè)或程序級(jí)并行。在多個(gè)作業(yè)或程序間的并行。提高并行性的途徑時(shí)間重疊:多個(gè)處理過(guò)程在時(shí)間上相互錯(cuò)開(kāi),輪流重疊的使用同一套硬件設(shè)備的各個(gè)部分,以加快硬件周轉(zhuǎn)來(lái)提高處理速度。時(shí)間重疊原則上不要求重復(fù)的硬件設(shè)備資源重復(fù):通過(guò)重復(fù)設(shè)置資源,尤其是硬件資源,大幅度提高計(jì)算機(jī)系統(tǒng)的性能資源共享:是一種軟件方法,它使多個(gè)任務(wù)按一定時(shí)間順序輪流使用同一套資源。資源共享既降低了成本,提高了系統(tǒng)資源利用率,也可以相應(yīng)地提高整個(gè)系統(tǒng)的性能。并行處理的發(fā)展過(guò)程可從單處理機(jī)系統(tǒng)和多計(jì)算機(jī)系統(tǒng)兩個(gè)方向來(lái)實(shí)現(xiàn)圖1.6單機(jī)系統(tǒng)中的并行性時(shí)間重疊流水線處理機(jī)pipeline圖1.7指令串行執(zhí)行和流水執(zhí)行多機(jī)系統(tǒng)發(fā)展也遵循著時(shí)間重疊、資源重復(fù)和資源共享的技術(shù)途徑表1.1三種類型多處理機(jī)比較項(xiàng)
目同構(gòu)型多處理機(jī)異構(gòu)型多處理機(jī)分布處理系統(tǒng)目的提高系統(tǒng)性能(可靠性、速度)提高系統(tǒng)使用效率兼顧效率與性能技術(shù)途徑資源重復(fù)(機(jī)間互連)時(shí)間重疊(功能專用化)資源共享(網(wǎng)絡(luò)化)組成同類型(同等功能)不同類型(不同功能)不限制分工方式任務(wù)分布功能分布硬件、軟件、數(shù)據(jù)等各種資源分布工作方式一個(gè)作業(yè)由多機(jī)協(xié)同并行地完成一個(gè)作業(yè)由多機(jī)協(xié)同串行地完成一個(gè)作業(yè)由一臺(tái)處理機(jī)完成,必要時(shí)才請(qǐng)求它機(jī)協(xié)作控制形式常采用浮動(dòng)控制方式采用專用控制方式分布控制方式耦合度緊密耦合松散耦合松散、緊密耦合對(duì)互連網(wǎng)絡(luò)的要求快速、靈活、可重構(gòu)專用快速、靈活、簡(jiǎn)單、通用表1.1三種類型多處理機(jī)比較1.3計(jì)算機(jī)系統(tǒng)的分類研究計(jì)算機(jī)系統(tǒng)的分類方法有助于認(rèn)識(shí)計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)和組成的特點(diǎn),理解系統(tǒng)的工作原理和性能。從不同的角度,可以提出不同的分類方法,這里主要介紹兩種常用的分類方法。Flynn分類法Michae1.J.Flynn于1966年提出按指令流和數(shù)據(jù)流的多倍性對(duì)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)進(jìn)行分類的方法。指令流(instructionstream)是指機(jī)器執(zhí)行的指令序列;數(shù)據(jù)流(datastream)是指由指令流調(diào)用的數(shù)據(jù)序列,包括輸入數(shù)據(jù)和中間結(jié)果;四種分類
(c)MISD計(jì)算機(jī)(a)SISD計(jì)算機(jī)(b)SIMD計(jì)算機(jī)(d)MIMD計(jì)算機(jī)馮氏分類法1972年,美籍華人馮澤云提出用最大并行度(degreeofparallelism)對(duì)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)進(jìn)行分類。所謂最大并行度Pm,是指計(jì)算機(jī)系統(tǒng)在單位時(shí)間內(nèi)能夠處理的最大的二進(jìn)制位數(shù)。最大并行度Pm定量地反映了對(duì)數(shù)據(jù)處理的并行性。
Pm=n*m
式中,n表示同時(shí)處理時(shí)一個(gè)字中的二進(jìn)制位數(shù);m表示能同時(shí)處理的字?jǐn)?shù)。按計(jì)算機(jī)對(duì)數(shù)據(jù)處理方式,由Pm值可得下列四種計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)類型。字串位串(WSBS)。其n=1,m=1,這是第一代計(jì)算機(jī)發(fā)展初期的純串行計(jì)算機(jī),如EDVAC。字串位并(WSBP)。其n>l,m=l,這是傳統(tǒng)并行的單處理機(jī),我們?nèi)粘J褂玫拇蠖鄶?shù)機(jī)器都屬于這種類型。字并位串(WPBS)。其n=l,m>l(即位片處理),如STARAN、早期的MPP、DAP等,它們都是20世紀(jì)70年代研制的并行處理機(jī)。字并位并(WPBP),其n>l,m>l(即全并行處理),如Cmmp、ILLIAC-IV以及PEPE等,它們都具有很好的并行性。系統(tǒng)結(jié)構(gòu)發(fā)展的因素現(xiàn)代計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的重大變化與改進(jìn):高級(jí)語(yǔ)言與機(jī)器語(yǔ)言的語(yǔ)義距離縮小硬件子系統(tǒng)與操作系統(tǒng)和數(shù)據(jù)庫(kù)管理系統(tǒng)軟件相適應(yīng)出現(xiàn)了與LSI,VLSI器件相適應(yīng)的計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)系統(tǒng)功能分散化、專業(yè)化高可靠性的容錯(cuò)計(jì)算機(jī)專用計(jì)算機(jī)串行向并行轉(zhuǎn)變突破指令驅(qū)動(dòng),出現(xiàn)數(shù)據(jù)驅(qū)動(dòng)和需求驅(qū)動(dòng)人工智能計(jì)算機(jī)1.4計(jì)算機(jī)性能的評(píng)價(jià)1.經(jīng)常性事件優(yōu)先原則是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)中最重要和最常用的原則。這個(gè)原則的基本思想是:對(duì)于經(jīng)常發(fā)生的事件,賦予它優(yōu)先的處理權(quán)和資源使用權(quán),加快它的處理速度,以便提高整個(gè)系統(tǒng)的性能。在進(jìn)行計(jì)算機(jī)設(shè)計(jì)時(shí),如果需要權(quán)衡,就必須側(cè)重常見(jiàn)事件,使最常發(fā)生的事件優(yōu)先。此原則也適用于資源分配。著重改進(jìn)經(jīng)常性事件性能,能夠明顯提高計(jì)算機(jī)性能。通常,經(jīng)常性事件的處理比較簡(jiǎn)單,容易使之更快完成。例如,CPU在進(jìn)行加法運(yùn)算時(shí),運(yùn)算結(jié)果可能產(chǎn)生溢出,但無(wú)溢出為更經(jīng)常發(fā)生的事件。因此,應(yīng)針對(duì)無(wú)溢出情況進(jìn)行優(yōu)化設(shè)計(jì),加快無(wú)溢出加法計(jì)算速度。雖然發(fā)生溢出時(shí)機(jī)器速度可能會(huì)減慢,但由于溢出事件發(fā)生概率很小,所以總體上機(jī)器性能還是提高了。2.Amdahl定律如何確定經(jīng)常性事件以及如何加快處理這些事件是Amdahl定律需要解決的問(wèn)題。Amdahl定律指出:系統(tǒng)中某部件由于采用某種更快的執(zhí)行方式后,整個(gè)系統(tǒng)性能的提高與這種執(zhí)行方式在系統(tǒng)中使用頻率或占總執(zhí)行時(shí)間的比例有關(guān)。系統(tǒng)加速比依賴于兩個(gè)因素:(1)可改進(jìn)部分在原系統(tǒng)執(zhí)行時(shí)間中所占的比例。例如,一個(gè)需運(yùn)行60s的程序中有20s的運(yùn)算可以加速,那么該比例就是20/60。(2)可改進(jìn)部分改進(jìn)以后的性能提高。例如,系統(tǒng)改進(jìn)后執(zhí)行程序,其中可改進(jìn)部分花費(fèi)的時(shí)間為2s。,而改進(jìn)前該部分需花費(fèi)的時(shí)間為5s,則性能提高為5/2。(1)改進(jìn)后系統(tǒng)的總執(zhí)行時(shí)間Tn
(2)改進(jìn)前后整個(gè)系統(tǒng)的加速比Sn(1-Fe)表示不可改進(jìn)比例。當(dāng)Fe
=0,即無(wú)改進(jìn)部分時(shí),Sn=1,所以系統(tǒng)性能提高幅度受改進(jìn)部分所占比例的限制。當(dāng)
時(shí),有
由此得到Amdahl定律的一個(gè)重要推論:若只針對(duì)整個(gè)系統(tǒng)的一部分進(jìn)行優(yōu)化.則系統(tǒng)獲取的性能改善極限值受Fe的約束,系統(tǒng)加速比不大于1/(1-Fe)。例題[例1.1]設(shè)在系統(tǒng)整個(gè)運(yùn)行時(shí)間中某部件的處理時(shí)間占30%,若改進(jìn)后速度加快到15倍,問(wèn)整個(gè)系統(tǒng)性能將提高多少?解:由題可知Fe=0.3,Se=15,則
[例1.2]若在整個(gè)測(cè)試程序的執(zhí)行時(shí)間中,求浮點(diǎn)數(shù)平方根FPSQR的操作占10%。現(xiàn)有兩種改進(jìn)方案:一種是采用FPSQR硬件,使其速度加快到10倍;另一種是使所有浮點(diǎn)數(shù)指令FP速度加快到4倍,并設(shè)FP指令占整個(gè)程序執(zhí)行時(shí)間的40%。請(qǐng)比較兩種方案的優(yōu)劣。解:硬件方案,F(xiàn)e=0.1,Se=10,則FP加速方案,F(xiàn)e=0.4,Se=4,則比較結(jié)果可知,F(xiàn)P加速方案更優(yōu)。注意,結(jié)論的前提是程序量的40%為FP指令。3.程序訪問(wèn)的局部性原理所謂程序訪問(wèn)的局部性原理,是指程序在執(zhí)行過(guò)程中所訪問(wèn)地址的分布有相對(duì)簇聚的傾向,這種簇聚表現(xiàn)在指令和數(shù)據(jù)兩方面。程序局部性包括時(shí)間上的局部性和空間上的局部性:前者是指程序即將用到的信息很可能是目前正在使用的信息;后者是指程序即將用到的信息很可能與目前正在使用的信息在程序空間上是相鄰或相近的。程序訪問(wèn)的局部性原理是計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的基礎(chǔ)之一。在很多地方,尤其在處理與存儲(chǔ)相關(guān)的問(wèn)題時(shí),經(jīng)常運(yùn)用這一原理。程序訪問(wèn)的局部性原理為我們提供了設(shè)計(jì)計(jì)算機(jī)系統(tǒng)時(shí),解決高性能和低成本之間的矛盾的途徑。1.4.2CPU性能公式為了衡量CPU的性能,可以將程序執(zhí)行的時(shí)間進(jìn)行分解。一個(gè)程序在計(jì)算機(jī)上運(yùn)行所花費(fèi)的CPU時(shí)間可表示為或者CPU時(shí)間=總CPU時(shí)鐘周期數(shù)×?xí)r鐘周期T若將程序執(zhí)行過(guò)程中所處理的指令數(shù)記為IC,可以獲得一個(gè)與計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)有關(guān)的參數(shù),即每條指令的平均時(shí)鐘周期數(shù)CPI(ClockCyclesPerInstruction):程序執(zhí)行的CPU時(shí)間可寫為這個(gè)公式通常稱為CPU性能公式,它表明CPU性能與三種系統(tǒng)結(jié)構(gòu)技術(shù)相關(guān)。時(shí)鐘頻率f:反映了計(jì)算機(jī)實(shí)現(xiàn)技術(shù)和計(jì)算機(jī)組織。機(jī)器指令的平均時(shí)鐘周期數(shù)CPI:反映了計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)組織和指令集的設(shè)計(jì)與實(shí)現(xiàn)。程序使用的指令條數(shù)IC:反映了計(jì)算機(jī)指令集的結(jié)構(gòu)和編譯技術(shù)。在程序執(zhí)行過(guò)程中,要用到不同類型的指令。假設(shè)計(jì)算機(jī)系統(tǒng)有n種指令,ICi表示第i種指令在程序中執(zhí)行的次數(shù),CPIi表示執(zhí)行一條第i種指令所需的平均時(shí)鐘周期數(shù),則程序執(zhí)行的CPU時(shí)間為則CPI可表示為式中,
表示了第i種指令在程序中所占比例。上面這些公式均稱為CPU性能公式。[例1.3]若浮點(diǎn)數(shù)指令FP占全部指令的30%,其中浮點(diǎn)數(shù)平方根FPSQR指令占全部指令的4%,F(xiàn)P操作的CPI為5,F(xiàn)PSQR操作的CPI為20,其他指令的平均CPI為1.25。現(xiàn)提出兩種改進(jìn)方案,一種是把FPSQR操作的CPI減至3,另一種是把所有FP操作的CPI減至3,試比較兩種方案對(duì)系統(tǒng)性能的提高程度。解:改進(jìn)之前,系統(tǒng)的指令平均時(shí)鐘周期數(shù)CPI為方案A:如果使FPSQR操作的時(shí)鐘周期數(shù)由CPIFPSQR=20降至
,則整個(gè)系統(tǒng)的CPI為方案B:如果使所有FP操作的平均時(shí)鐘周期數(shù)由CPIFP=5降至
,則整個(gè)系統(tǒng)的CPI為從降低整個(gè)系統(tǒng)的指令平均時(shí)鐘周期數(shù)的程度來(lái)看,方案A優(yōu)于方案B。分別計(jì)算兩種方案的加速比:從加速比來(lái)看.同樣得出方案A優(yōu)于方案B的結(jié)論。[例1.4]設(shè)機(jī)器A和機(jī)器B對(duì)條件轉(zhuǎn)移采用的處理方法不同。CPUA采用比較指令和條件轉(zhuǎn)移指令的處理方法,實(shí)現(xiàn)一次條件轉(zhuǎn)移需執(zhí)行兩條指令,條件轉(zhuǎn)移指令和比較指令各占執(zhí)行指令總數(shù)的15%。CPUB,采用比較與條件轉(zhuǎn)移指令合一的處理方法,實(shí)現(xiàn)一次條件轉(zhuǎn)移只需執(zhí)行一條指令。若規(guī)定兩臺(tái)機(jī)器執(zhí)行條件轉(zhuǎn)移指令需2個(gè)時(shí)鐘周期,其他指令只需1個(gè)時(shí)鐘周期,CPUB的時(shí)鐘周期比CPUA慢20%,請(qǐng)比較:(1)CPUA和CPUB哪個(gè)工作速度更快?(2)若CPUB的時(shí)鐘周期只比CPUA慢10%,哪個(gè)CPU工作速度更快?
解:(1)計(jì)算機(jī)器A的CPIA為CPIA=0.15×2+0.85×1=1.15CPUA時(shí)間=ICA×CPIA×TA=1.15TA×ICAICA是CPUA的指令條數(shù)。由于CPUB無(wú)比較指令,所以ICB=0.85ICA,使CPUB的轉(zhuǎn)移指令所占比例為15%÷805%=17.65%,計(jì)算機(jī)器B的CPIB
為CPIB=0.18×2+0.82×1=1.18又因?yàn)镃PUB的TB比CPUA的TA慢20%,所以TB=1.2TACPUB時(shí)間=ICB×CPIB×TB=0.85ICA×1.18×1.2TA=1.2TA×ICA比較可知,CPUA時(shí)間<CPUB時(shí)間,故CPUA比CPUB工作速度快。(2)此時(shí)有TB=1.1TA,據(jù)前結(jié)論CPUA時(shí)間=1.15TA×ICACPUB時(shí)間=0.85ICA×1.18×1.1TA=1.1TA×ICA因此CPUB時(shí)間<CPUA時(shí)間,故CPUB的工作速度更快些。1.4.1系統(tǒng)結(jié)構(gòu)的性能評(píng)價(jià)標(biāo)準(zhǔn)衡量計(jì)算機(jī)性能的唯一固定而且可靠的標(biāo)準(zhǔn)就是機(jī)器真正執(zhí)行程序的時(shí)間。這里的執(zhí)行時(shí)間是計(jì)算機(jī)在完成一個(gè)任務(wù)時(shí),包括訪問(wèn)磁盤、訪問(wèn)存儲(chǔ)器、I/O操作及系統(tǒng)開(kāi)銷所花費(fèi)的全部時(shí)間,也稱為計(jì)算機(jī)的響應(yīng)時(shí)間。CPU時(shí)間是指CPU工作的時(shí)間,不包括I/O等待時(shí)間。它可分為CPU執(zhí)行用戶程序的用戶CPU時(shí)間和CPU花費(fèi)在操作系統(tǒng)上的系統(tǒng)CPU時(shí)間。在此討論的CPU性能指的是用戶CPU時(shí)間。因此,計(jì)算機(jī)性能可分為基于響應(yīng)時(shí)間的“系統(tǒng)性能”度量方法和基于用戶CPU時(shí)間的“CPU性能”度量方法。下面主耍討論CPU性能。1.MIPS和MFLOPSMIPS(MillionInstructionsPerSecond),即百萬(wàn)條指令每秒是目前較為流行的描述計(jì)算機(jī)性能的替代標(biāo)準(zhǔn)之一。對(duì)于一個(gè)給定的程序,MIPS定義為MIPS是單位時(shí)間內(nèi)執(zhí)行指令的次數(shù)。若用Te表示程序的執(zhí)行時(shí)間,則Te的表達(dá)式為[例1.5]已知某處理機(jī)的CPI=0.5,時(shí)鐘頻率為450MHz,試計(jì)算該處理機(jī)的運(yùn)算速度。解:由于處理機(jī)的時(shí)鐘頻率為fc=450MHz,可求得運(yùn)算速度為即該處理機(jī)的運(yùn)算速度為900MIPS。機(jī)器的MIPS越高,說(shuō)明機(jī)器速度越快,故MIPS可從一定程度上反映機(jī)器的性能。但是用MIPS評(píng)價(jià)機(jī)器的性能存在以下問(wèn)題。MIPS依賴于機(jī)器的指令集,所以用MIPS來(lái)衡量指令集不同的機(jī)器的性能優(yōu)劣是很不準(zhǔn)確的。
在同一臺(tái)機(jī)器上,MIPS會(huì)因程序不同而發(fā)生變化,有時(shí)其差異會(huì)很大。MIPS的評(píng)價(jià)結(jié)果可能與采用正確的性能評(píng)價(jià)方法的評(píng)價(jià)結(jié)果相反。一個(gè)典型例子就是具有可選硬件浮點(diǎn)運(yùn)算部件的機(jī)器。因?yàn)楦↑c(diǎn)運(yùn)算速度低于整數(shù)運(yùn)算,所以很多機(jī)器提供可選的硬件浮點(diǎn)運(yùn)算部件。結(jié)果是用硬件實(shí)現(xiàn)浮點(diǎn)運(yùn)算的時(shí)間少,而用軟件實(shí)現(xiàn)浮點(diǎn)運(yùn)算的MIPS高,導(dǎo)致MIPS評(píng)價(jià)結(jié)果與機(jī)器實(shí)際性能相反。因此MIPS標(biāo)準(zhǔn)只適宜于評(píng)價(jià)標(biāo)量機(jī),因?yàn)樵跇?biāo)量機(jī)中執(zhí)行一條指令,一般可得到一個(gè)運(yùn)算結(jié)果,而在向量機(jī)中,執(zhí)行一條向量指令通常可得到多個(gè)運(yùn)算結(jié)果。所以,用MIPS來(lái)衡量向量機(jī)是不合適的。另一種替代標(biāo)準(zhǔn)是MFLOPS(MillionFloatingPointOperationsPerSecond),即百萬(wàn)次浮點(diǎn)運(yùn)算每秒。MFLOPS定義為:
由于MFLOPS衡量機(jī)器性能時(shí)存在下述缺陷,故也不能作為系統(tǒng)性能評(píng)價(jià)的標(biāo)準(zhǔn)。(1)MFLOPS只能衡量機(jī)器浮點(diǎn)操作的性能,而不能體現(xiàn)機(jī)器的整體性能。例如編譯程序,不管機(jī)器的性能有多好,它的MFLOPS部不會(huì)太高。(2)MFLOPS的衡量是基于浮點(diǎn)操作而非指令來(lái)進(jìn)行的,所以它可以用來(lái)比較不同指令集的機(jī)器之間的浮點(diǎn)操作性能,但比較的結(jié)果并非可靠。由于不同機(jī)器的浮點(diǎn)運(yùn)算集可能不同,例如,機(jī)器A有浮點(diǎn)除法指令,而機(jī)器B沒(méi)有,它們對(duì)浮點(diǎn)操作的支持就會(huì)不同,完成程序中的浮點(diǎn)除法時(shí),前者的浮點(diǎn)操作次數(shù)比后者少得多,執(zhí)行時(shí)間也少于后者,所以難以按MFLOPS評(píng)價(jià)它們的性能優(yōu)劣。(3)MFLOPS取決于機(jī)器和程序兩個(gè)方面,不同程序在同一機(jī)器上的MFLOPS會(huì)不相同。例如,運(yùn)行由100%浮點(diǎn)加法組成的程序所得到的MFLOPS值將比運(yùn)行由100%浮點(diǎn)除法組成的程序所得到的MFLOPS值高。因此用單個(gè)程序的MFLOPS值不能反映機(jī)器的性能。MFLOPS和MIPS之間的量值關(guān)系沒(méi)有統(tǒng)一標(biāo)準(zhǔn),一般認(rèn)為在標(biāo)量計(jì)算機(jī)中執(zhí)行一次浮點(diǎn)運(yùn)算需要2~5條指令,平均約需3條指令,故有1MFLOPS≈3MIPS。[例1.6]用一臺(tái)處理機(jī)執(zhí)行標(biāo)準(zhǔn)測(cè)試程序,程序所含的各類指令數(shù)量和執(zhí)行每類指令所用時(shí)鐘周期數(shù)如表1.4所示,處理機(jī)的時(shí)鐘頻率為50MHz,求有效CPI、MIPS速率和程序的執(zhí)行時(shí)間。表1.4標(biāo)準(zhǔn)測(cè)試程序中各類指令數(shù)和相應(yīng)所需的時(shí)鐘周期數(shù)指令類型整數(shù)運(yùn)算數(shù)據(jù)傳送浮點(diǎn)運(yùn)算控制傳送指令數(shù)時(shí)鐘周期數(shù)43000134000217000260002解:指令的總數(shù)為
43000+34000+17000+6000=100000條其中各類指令所占的比例分別是:整數(shù)運(yùn)算為43%,數(shù)據(jù)傳送為34%,浮點(diǎn)運(yùn)算為17%,控制傳送為6%。
(1)有效CPI為
1×0.43+2×0.34+2×0.17+2×0.06=1.57CPI(2)MIPS速率為(3)程序的執(zhí)行時(shí)間為2.性能測(cè)試機(jī)器的性能需要采用基準(zhǔn)測(cè)試程序來(lái)測(cè)試評(píng)價(jià),衡量計(jì)算機(jī)性能的標(biāo)準(zhǔn)是程序的執(zhí)行時(shí)間?;鶞?zhǔn)測(cè)試程序是為比較測(cè)試機(jī)器性能而專門編寫的程序,它考慮了各種操作和各種程序的比例,可以是一組或多組程序。將n個(gè)測(cè)試程序在機(jī)器上運(yùn)行,記錄它們的執(zhí)行時(shí)間,然后可按下述方法對(duì)n個(gè)執(zhí)行時(shí)間進(jìn)行處理來(lái)評(píng)價(jià)機(jī)器性能。常用的基準(zhǔn)測(cè)試軟件:superPI,linpack(1)平均執(zhí)行時(shí)間平均執(zhí)行時(shí)間是各測(cè)試程序執(zhí)行時(shí)間的算術(shù)平均值。其中,Ti為第i個(gè)測(cè)試程序的執(zhí)行時(shí)間。(2)加權(quán)執(zhí)行時(shí)間加權(quán)執(zhí)行時(shí)間是各測(cè)試程序執(zhí)行時(shí)間的加權(quán)平均值。其中,權(quán)因子Wi是第i個(gè)測(cè)試程序在總共n個(gè)測(cè)試程序中所占的權(quán)重,
。本章小結(jié)本章主要討論了計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的基本概念。首先,在計(jì)算機(jī)系統(tǒng)層次結(jié)構(gòu)概念的基礎(chǔ)上,定義了計(jì)算機(jī)系統(tǒng)結(jié)構(gòu),并闡述了計(jì)算機(jī)組成和計(jì)算機(jī)實(shí)現(xiàn)的含義以及它們和計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)之間的關(guān)系。然后進(jìn)一步探討了計(jì)算機(jī)系統(tǒng)中對(duì)系統(tǒng)結(jié)構(gòu)產(chǎn)生影響的重要特性。計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)研究的主要內(nèi)容之一就是通過(guò)并行性技術(shù)提高計(jì)算機(jī)系統(tǒng)的性能。本章講述了并行性技術(shù)的基本概念,討論了提高計(jì)算機(jī)系統(tǒng)并行性所采用的時(shí)間重疊、資源重復(fù)和資源共享三種技術(shù)途徑,以及從單機(jī)或多機(jī)系統(tǒng)沿不同技術(shù)途徑發(fā)展而形成的同構(gòu)型、異構(gòu)型和分布式處理等不同類型的多處理機(jī)系統(tǒng)。在此基礎(chǔ)上介紹了計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)的Flynn和馮氏兩種分類方法。對(duì)計(jì)算機(jī)系統(tǒng)技術(shù)性能進(jìn)行定量分析是研究和發(fā)展現(xiàn)代計(jì)算機(jī)的重要手段之一。本章介紹了計(jì)算機(jī)系統(tǒng)性能的評(píng)價(jià)標(biāo)準(zhǔn),討論了對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行定量分析的技術(shù)和方法。軟件對(duì)于系統(tǒng)結(jié)構(gòu)的影響軟件是促進(jìn)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)發(fā)展的最重要因素為了滿足軟件的可移植性的要求有如下三種解決方法系列機(jī)方法系列機(jī):一個(gè)廠家生產(chǎn)相同的系統(tǒng)結(jié)構(gòu),但不同組成和型號(hào)的機(jī)器,做到向后兼容例如:IBM370系列機(jī) AnnouncedSeptember23,1970,IBM370-145模擬和仿真方法模擬:用軟件方法在一臺(tái)計(jì)算機(jī)上實(shí)現(xiàn)另一臺(tái)計(jì)算機(jī)的指令系統(tǒng),若在A計(jì)算機(jī)上實(shí)現(xiàn)B計(jì)算機(jī)的指令系統(tǒng),此時(shí),A稱為宿主機(jī),B稱為虛擬機(jī)統(tǒng)一的高級(jí)語(yǔ)言方法將CPU和外圍設(shè)備之間進(jìn)行對(duì)接的接口設(shè)備具有:控制,緩沖,狀態(tài),轉(zhuǎn)換,整理,程序中斷的功能應(yīng)用對(duì)于系統(tǒng)結(jié)構(gòu)的影響主要是一些科學(xué)問(wèn)題的高性能計(jì)算器件對(duì)于系統(tǒng)結(jié)構(gòu)的影響五代計(jì)算機(jī)的典型特征系統(tǒng)結(jié)構(gòu)的生命周期定量分析技術(shù)系統(tǒng)設(shè)計(jì)的定量原理大概率事件優(yōu)先原理:對(duì)于大概率事件,賦予它優(yōu)先的處理權(quán)和資源使用權(quán),以獲得全局的最優(yōu)結(jié)果Amdahl定律:加快某部件執(zhí)行速度所獲得的系統(tǒng)性能加速比,受限于該部件在系統(tǒng)中的重要性
加速比計(jì)算機(jī)執(zhí)行某個(gè)任務(wù)的總時(shí)間中可被改進(jìn)部分的時(shí)間所占的百分比,記為Fe;提高的倍數(shù)記為Se;改進(jìn)后的時(shí)間Tˊ=T0(1-Fe+Fe/Se)加速比n=T0/Tˊ=1/(1-Fe+Fe/Se)例題1.6假設(shè)系統(tǒng)某一個(gè)部件的處理速度加快9倍,但該部件的原處理時(shí)間僅為整個(gè)運(yùn)行時(shí)間的45%,則采用加快措施后能使整個(gè)系統(tǒng)的性能提高多少?解:Fe=0.45;Se=9所以n=1/(1-Fe+Fe/Se)=1/(1-0.45+0.45/9)=1/0.6=1.667例題1.7假定要將某一執(zhí)行部件改進(jìn)后速度提高10倍,改進(jìn)后被改進(jìn)部件執(zhí)行時(shí)間占系統(tǒng)總運(yùn)行時(shí)間的50%。問(wèn)改進(jìn)后,獲得的加速比n?解:假設(shè)系統(tǒng)改進(jìn)前執(zhí)行時(shí)間T,改進(jìn)后為Tˊ,則
n=T/Tˊ=1/(1-Fe+Fe/Se)
Tˊ=(1-Fe+Fe/Se)*T又50%Tˊ=Fe*T/1050%Tˊ=(1-Fe)*TFe=5*(Tˊ/T)
所以n=T/Tˊ=5.5例題1.8上例中的部件在改進(jìn)前的執(zhí)行時(shí)間占改進(jìn)后的百分比是多少?解:
n=1/(1-Fe+Fe/Se)=1/(1-Fe+Fe/10)=5.5Fe=91%CPU性能公式CPU的運(yùn)行周期稱為時(shí)鐘周期。用時(shí)間長(zhǎng)度(ns)或頻率(MHz)來(lái)表示。一個(gè)程序所花費(fèi)的CPU時(shí)間Tcpu如下表示:
Tcpu=Nc*t=Nc/f其中,Nc是CPU時(shí)鐘周期,t是時(shí)長(zhǎng),f是頻率程序執(zhí)行時(shí)間的另一表述指令條數(shù)IN,每條指令平均時(shí)鐘周期數(shù)CPI
Tcpu=IN*CPI*t=(IN*CPI)/f上式表示,CPU性能與3個(gè)因素有關(guān):時(shí)鐘頻率f;每條指令所花的時(shí)鐘周期CPI指令條數(shù)IN時(shí)鐘周期總數(shù)的另一計(jì)算方法其中:Ii表示i指令在程序中執(zhí)行的次數(shù);CPIi表示i指令所需的平均時(shí)鐘周期數(shù);n為指令種類數(shù)。例1.9 有兩臺(tái)機(jī)器A,B,他們對(duì)于條件轉(zhuǎn)移指令的處理采用各不相同的設(shè)計(jì)方案:①CPUA采用一條比較指令來(lái)設(shè)置相應(yīng)的條件碼,由緊隨其后的一條轉(zhuǎn)移指令對(duì)此條件碼進(jìn)行測(cè)試,以確定是否進(jìn)行轉(zhuǎn)移,因此實(shí)現(xiàn)一次條件轉(zhuǎn)移需要比較和測(cè)試兩條指令;②CPUB采用比較和測(cè)試兩種功能合在一條指令的方法,實(shí)現(xiàn)條件轉(zhuǎn)移只需一條指令。 假設(shè)在這兩臺(tái)機(jī)器的指令系統(tǒng)中,執(zhí)行條件轉(zhuǎn)移指令需要2個(gè)時(shí)鐘周期,而其他指令只需1個(gè)時(shí)鐘周期。又假設(shè)CPUA中,條件轉(zhuǎn)移指令占總執(zhí)行指令條數(shù)的20%。由于每條轉(zhuǎn)移指令都需要一條比較指令,所以比較指令也將占20%。由于CPUB在轉(zhuǎn)移指令中包含了比較功能,因此它的時(shí)鐘周期就比CPUA要慢25%。問(wèn)CPUA和CPUB哪個(gè)工作速度更快?解:設(shè)CPUA的時(shí)鐘周期長(zhǎng)度為tA,CPUB的時(shí)鐘周期長(zhǎng)度為tB,
CPIA=0.2×2+0.8×1=1.2 TCPUA=INA×1.2×tA, CPUB中由于沒(méi)有比較指令,轉(zhuǎn)移指令由原來(lái)占20%上升為20%÷80%=25%,它須要個(gè)時(shí)鐘周期,而其余的75%指令只需要1個(gè)時(shí)鐘周期,所以 CPIB=0.25×2+0.75×1=1.25 CPIB中由于沒(méi)有比較指令,因此INB=0.8×INA。又因?yàn)閠B=1.25tA,所以 TCPUB=INB×CPIB×tB
=0.8INA×1.25×1.25tA
=1.25INA×tA
所以可見(jiàn)TCPUA<TCPUB例1.10上例中,如果CPUB的時(shí)鐘周期只比CPUA的慢10%,那么哪一個(gè)CPU會(huì)工作的更快些?解:TCPUA=INA×1.2×tA
因?yàn)閠B=1.1tA
TCPUB=0.8INA×1.25×1.1tA=1.1INA×tA 所以可見(jiàn)TCPUB<TCPUA程序訪存的局部性原理一個(gè)程序用90%的執(zhí)行時(shí)間去執(zhí)行僅占10%的程序代碼此原理成為存儲(chǔ)器體系的構(gòu)造基礎(chǔ)實(shí)質(zhì)是:程序往往重復(fù)使用它剛剛使用過(guò)的數(shù)據(jù)和指令性能評(píng)價(jià)標(biāo)準(zhǔn)時(shí)間指標(biāo):完成同樣的工作量,花費(fèi)的時(shí)間最少,則性能最高以SuperPI為例常用的幾種評(píng)價(jià)指標(biāo)MIPS—millioninstructionspersecond
每秒百萬(wàn)條指令數(shù)
MIPS定義為:其中IN是指令總數(shù);TE是執(zhí)行所需時(shí)間;t為時(shí)鐘周期長(zhǎng)度;f是時(shí)鐘頻率,是t的倒數(shù) MIPS存在的不足之處MIPS依賴于指令系統(tǒng),比較不同指令系統(tǒng)是不準(zhǔn)確的在同一臺(tái)機(jī)器上,MIPS因程序不同而變化僅適于評(píng)估標(biāo)量計(jì)算機(jī)MFLOPSmillionfloatingpointoperationpersecond每秒百萬(wàn)浮點(diǎn)操作MFLOPS基于操作而非指令,可比較兩種不同機(jī)器;只能衡量浮點(diǎn)操作,而不能體現(xiàn)整體性能測(cè)試程序真實(shí)程序。例如:C編譯程序,Tex軟件,CAD工具核心程序。例如:Linpack小測(cè)試程序。例如:Quicksort綜合測(cè)試程序。例如:Whetstone例1.11用一臺(tái)40MHz處理執(zhí)行標(biāo)準(zhǔn)測(cè)試程序,它包含的混合指令數(shù)和相應(yīng)所需的時(shí)鐘周期數(shù)如表1.2所示,求有效CPI,MIPS速率和程序執(zhí)行時(shí)間T指令類型指令數(shù)時(shí)鐘周期數(shù)整數(shù)運(yùn)算450001數(shù)據(jù)傳送320002浮點(diǎn)運(yùn)算150002控制傳送80002解:利用前述公式MIPS速率=f/(CPI×106)=(40×106)/(1.55×106)=25.8(百萬(wàn)條指令/秒)程序執(zhí)行時(shí)間T=IN/(MIPS×106)=(100000)/(25.8×106)=0.003875(秒)性能比較下表列出兩個(gè)程序在A、B、C三臺(tái)機(jī)器上的執(zhí)行時(shí)間(秒)ABCW(1)W(2)W(3)程序11.0010.0020.000.500.9090.999程序21000.00100.0020.000.500.0910.001加權(quán)算術(shù)平均Am(1)500.5055.0020.00加權(quán)算術(shù)平均Am(2)91.9118.1920.00加權(quán)算術(shù)平均Am(3)2.0010.0920.00程序執(zhí)行的衡量標(biāo)準(zhǔn)算術(shù)平均值法加權(quán)算術(shù)平均值
2.調(diào)和平均值法如果性能是用速度(MFLOPS)表示,可以采用調(diào)和平均值法來(lái)比較:
R
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年新興科技產(chǎn)業(yè)投資分析咨詢服務(wù)合同模板3篇
- 二零二五年度時(shí)尚服飾LOGO設(shè)計(jì)作品轉(zhuǎn)讓合同協(xié)議3篇
- 2024版次新房交易合同3篇
- 二零二五年度離婚協(xié)議按揭房產(chǎn)分割范本制作
- 二零二五年生物制藥廠勞務(wù)承包與藥品研發(fā)合同3篇
- 西安音樂(lè)學(xué)院《材料科學(xué)基礎(chǔ)雙語(yǔ)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024版板材購(gòu)銷合同標(biāo)準(zhǔn)范文
- 二零二五年度貨車車輛買賣與綠色物流推廣合同3篇
- 2024電商公司帶貨合同范本
- 二零二五版城市更新項(xiàng)目開(kāi)發(fā)委托管理及規(guī)劃設(shè)計(jì)服務(wù)協(xié)議3篇
- 2024年高級(jí)養(yǎng)老護(hù)理員職業(yè)鑒定考試題庫(kù)大全-下(多選、判斷題)
- 數(shù)學(xué)學(xué)科的重要性與應(yīng)用
- 【閱讀提升】部編版語(yǔ)文五年級(jí)下冊(cè)第二單元閱讀要素解析 類文閱讀課外閱讀過(guò)關(guān)(含答案)
- 病理科醫(yī)院感染控制
- 購(gòu)銷合同電子版完整版
- 福建省福州市延安中學(xué)2023-2024學(xué)年八年級(jí)上學(xué)期期末物理模擬試卷+
- 2024年度醫(yī)院肝膽外科實(shí)習(xí)生帶教計(jì)劃課件
- 微機(jī)原理與接口技術(shù)考試試題及答案(綜合-必看)
- 勞務(wù)投標(biāo)技術(shù)標(biāo)
- 研發(fā)管理咨詢項(xiàng)目建議書
- 轉(zhuǎn)錢委托書授權(quán)書范本
評(píng)論
0/150
提交評(píng)論