出版時(shí)間:2012-1 出版社:機(jī)械工業(yè)出版社 作者:(美)David A.Patterson,(美)John L.Hennessy 譯者:康繼昌,樊曉椏,安建峰
Tag標(biāo)簽:無
內(nèi)容概要
本書是計(jì)算機(jī)組成的經(jīng)典教材。全書著眼于當(dāng)前計(jì)算機(jī)設(shè)計(jì)中最基本的概念,展示了軟硬件間的關(guān)系,并全面介紹當(dāng)代計(jì)算機(jī)系統(tǒng)發(fā)展的主流技術(shù)和最新成就。
同以往版本一樣,本書采用MIPS處理器作為展示計(jì)算機(jī)硬件技術(shù)、匯編語言、計(jì)算機(jī)算術(shù)、流水線、存儲(chǔ)器層次結(jié)構(gòu)以及I/O等基本功能的核心。書中強(qiáng)調(diào)了計(jì)算機(jī)從串行到并行的最新革新,在每章中都納入了并行硬件和軟件的主題,以軟硬件協(xié)同設(shè)計(jì)發(fā)揮多核性能為最終目標(biāo)。
本書適合作為高等院校相關(guān)專業(yè)的本科生和研究生教材,對(duì)廣大技術(shù)人員也有很高的參考價(jià)值。
作者簡介
作者:(美國)帕特森 (David A.Patterson) (美國)亨尼斯 (John L.Hennessy) 譯者:康繼昌 樊曉椏 安建峰 等David A.Patterson,加州大學(xué)伯克利分校計(jì)算機(jī)科學(xué)系教授,美國國家工程研究院院士,IEEE和ACM會(huì)士,曾因成功的啟發(fā)式教育方法被IEEE授予James H.Muiiigan.Jr教育獎(jiǎng)?wù)隆K驗(yàn)閷?duì)RISC技術(shù)的貢獻(xiàn)而榮獲1995年IEEE技術(shù)成就獎(jiǎng),而在RAID技術(shù)方面的成就為他贏得了1999年IEEE。Reynold Johnson信息存儲(chǔ)獎(jiǎng)。2000年他和John L.Hennessy分享了Johnvon Neumann獎(jiǎng)。John L.Hennessy斯坦福大學(xué)接長。IEEE和ACM會(huì)士,美國國家工程研究院院士及美國科學(xué)藝術(shù)研究院院士。Hennessy教授因?yàn)樵赗ISC技術(shù)方面做出了突出貢獻(xiàn)而榮獲2001年的Eckert-Mauchly獎(jiǎng)?wù)拢彩?001年Seymour Cray計(jì)算機(jī)工程獎(jiǎng)得主,并且和David A.Pafferson分享了2000年Johnvon Neumann獎(jiǎng)。
書籍目錄
出版者的話
譯者序
前言
第1章 計(jì)算機(jī)概要與技術(shù)
1.1 引言
1.1.1 計(jì)算應(yīng)用的分類及其特性
1.1.2 你能從本書學(xué)到什么
1.2 程序概念入門
1.3 硬件概念入門
1.3.1 剖析鼠標(biāo)
1.3.2 顯示器
1.3.3 打開機(jī)箱
1.3.4 數(shù)據(jù)安全
1.3.5 與其他計(jì)算機(jī)通信
1.3.6 處理器和存儲(chǔ)器制造技術(shù)
1.4 性能
1.4.1 性能的定義
1.4.2 性能的測量
1.4.3 CPU性能及其因素
1.4.4 指令的性能
1.4.5 經(jīng)典的CPU性能公式
1.5 功耗墻
1.6 滄海巨變:從單處理器向多處理器轉(zhuǎn)變
1.7 實(shí)例:制造以及AMD Opteron X4基準(zhǔn)
1.7.1 SPEC CPU基準(zhǔn)測試程序
1.7.2 SPEC功耗基準(zhǔn)測試程序
1.8 謬誤與陷阱
1.9 本章小結(jié)
1.10 拓展閱讀
1.11 練習(xí)題
第2章 指令:計(jì)算機(jī)的語言
2.1 引言
2.2 計(jì)算機(jī)硬件的操作
2.3 計(jì)算機(jī)硬件的操作數(shù)
2.3.1 存儲(chǔ)器操作數(shù)
2.3.2 常數(shù)或立即數(shù)操作數(shù)
2.4 有符號(hào)和無符號(hào)數(shù)
2.5 計(jì)算機(jī)中指令的表示
2.6 邏輯操作
2.7 決策指令
2.7.1 循環(huán)
2.7.2 case/switch語句
2.8 計(jì)算機(jī)硬件對(duì)過程的支持
2.8.1 使用更多的寄存器
2.8.2 嵌套過程
2.8.3 在棧中為新數(shù)據(jù)分配空間
2.8.4 在堆中為新數(shù)據(jù)分配空間
2.9 人機(jī)交互
2.10 MIPS中32位立即數(shù)和地址的尋址
2.10.1 32位立即數(shù)
2.10.2 分支和跳轉(zhuǎn)中的尋址
2.10.3 MIPS尋址模式總結(jié)
2.10.4 機(jī)器語言解碼
2.11 并行與指令:同步
2.12 翻譯并執(zhí)行程序
2.12.1 編譯器
2.12.2 匯編器
2.12.3 鏈接器
2.12.4 加載器
2.12.5 動(dòng)態(tài)鏈接庫
2.12.6 啟動(dòng)一個(gè)Java程序
2.13 以一個(gè)C排序程序?yàn)槔?br /> 2.13.1 swap過程
2.13.2 sort過程
2.14 數(shù)組與指針
2.14.1 用數(shù)組實(shí)現(xiàn)clear
2.14.2 用指針實(shí)現(xiàn)clear
2.14.3 比較兩個(gè)版本的clear
2.15 高級(jí)內(nèi)容:編譯C語言和解釋Java語言
2.16 實(shí)例:ARM指令集
2.16.1 尋址模式
2.16.2 比較和條件分支
2.16.3 ARM的特色
2.17 實(shí)例:x86指令集
2.17.1 Intel x86的改進(jìn)
2.17.2 x86寄存器和數(shù)據(jù)尋址模式
2.17.3 x86整數(shù)操作
2.17.4 x86指令編碼
2.17.5 x86總結(jié)
2.18 謬誤與陷阱
2.19 本章小結(jié)
2.20 拓展閱讀
2.21 練習(xí)題
第3章 計(jì)算機(jī)的算術(shù)運(yùn)算
3.1 引言
3.2 加法和減法
3.2.1 多媒體算術(shù)運(yùn)算
3.2.2 小結(jié)
3.3 乘法
3.3.1 順序的乘法算法和硬件
3.3.2 有符號(hào)乘法
3.3.3 更快速的乘法
3.3.4 MIPS中的乘法
3.3.5 小結(jié)
3.4 除法
3.4.1 除法算法及其硬件結(jié)構(gòu)
3.4.2 有符號(hào)除法
3.4.3 更快速的除法
3.4.4 MIPS中的除法
3.4.5 小結(jié)
3.5 浮點(diǎn)運(yùn)算
3.5.1 浮點(diǎn)表示
3.5.2 浮點(diǎn)加法
3.5.3 浮點(diǎn)乘法
3.5.4 MIPS中的浮點(diǎn)指令
3.5.5 算術(shù)精確性
3.5.6 小結(jié)
3.6 并行性和計(jì)算機(jī)算術(shù):結(jié)合律
3.7 實(shí)例:x86的浮點(diǎn)
3.7.1 x86浮點(diǎn)體系結(jié)構(gòu)
3.7.2 Intel SIMD流擴(kuò)展2(SSE2)浮點(diǎn)體系結(jié)構(gòu)
3.8 謬誤與陷阱
3.9 本章小結(jié)
3.10 拓展閱讀
3.11 練習(xí)題
第4章 處理器
4.1 引言
4.1.1 一個(gè)基本的MIPS實(shí)現(xiàn)
4.1.2 實(shí)現(xiàn)方式概述
4.2 邏輯設(shè)計(jì)慣例
4.3 建立數(shù)據(jù)通路
4.4 一個(gè)簡單的實(shí)現(xiàn)機(jī)制
4.4.1 ALU控制
4.4.2 主控制單元的設(shè)計(jì)
4.4.3 數(shù)據(jù)通路的操作
4.4.4 控制的結(jié)束
4.4.5 為什么不使用單周期實(shí)現(xiàn)方式
4.5 流水線概述
4.5.1 面向流水線的指令集設(shè)計(jì)
4.5.2 流水線冒險(xiǎn)
4.5.3 對(duì)流水線概述的小結(jié)
4.6 流水線數(shù)據(jù)通路及其控制
4.6.1 圖形化表示的流水線
4.6.2 流水線控制
4.7 數(shù)據(jù)冒險(xiǎn):轉(zhuǎn)發(fā)與阻塞
4.8 控制冒險(xiǎn)
4.8.1 假定分支不發(fā)生
4.8.2 縮短分支的延遲
4.8.3 動(dòng)態(tài)分支預(yù)測
4.8.4 流水線小結(jié)
4.9 異常
4.9.1 異常在MIPS體系結(jié)構(gòu)中的處理
4.9.2 在流水線實(shí)現(xiàn)中的異常
4.10 并行和高級(jí)指令級(jí)并行
4.10.1 推測的概念
4.10.2 靜態(tài)多發(fā)射處理器
4.10.3 動(dòng)態(tài)多發(fā)射處理器
4.11 實(shí)例:AMD Opteron X4(Barcelona)流水線
4.12 高級(jí)主題:通過硬件設(shè)計(jì)語言描述和建模流水線來介紹數(shù)字設(shè)計(jì)以及更多流水線示例
4.13 謬誤與陷阱
4.14 本章小結(jié)
4.15 拓展閱讀
4.16 練習(xí)題
第5章 大容量和高速度:開發(fā)存儲(chǔ)器層次結(jié)構(gòu)
5.1 引言
5.2 cache的基本原理
5.2.1 cache訪問
5.2.2 cache缺失處理
5.2.3 寫操作處理
5.2.4 一個(gè)cache的例子:內(nèi)置FastMATH處理器
5.2.5 設(shè)計(jì)支持cache的存儲(chǔ)系統(tǒng)
5.2.6 小結(jié)
5.3 cache性能的評(píng)估和改進(jìn)
5.3.1 通過更靈活地放置塊來減少cache缺失
5.3.2 在cache中查找一個(gè)塊
5.3.3 替換塊的選擇
5.3.4 使用多級(jí)cache結(jié)構(gòu)減少缺失代價(jià)
5.3.5 小結(jié)
5.4 虛擬存儲(chǔ)器
5.4.1 頁的存放和查找
5.4.2 缺頁
5.4.3 關(guān)于寫
5.4.4 加快地址轉(zhuǎn)換:TLB
5.4.5 集成虛擬存儲(chǔ)器、TLB和cache
5.4.6 虛擬存儲(chǔ)器中的保護(hù)
5.4.7 處理TLB缺失和缺頁
5.4.8 小結(jié)
5.5 存儲(chǔ)器層次結(jié)構(gòu)的一般架構(gòu)
5.5.1 問題1:一個(gè)塊可以被放在何處
5.5.2 問題2:如何找到一個(gè)塊
5.5.3 問題3:當(dāng)cache缺失時(shí)替換哪一塊
5.5.4 問題4:寫操作如何處理
5.5.5 3C:一種理解存儲(chǔ)器層次結(jié)構(gòu)行為的直觀模型
5.6 虛擬機(jī)
5.6.1 虛擬機(jī)監(jiān)視器的必備條件
5.6.2 指令集系統(tǒng)結(jié)構(gòu)(缺乏)對(duì)虛擬機(jī)的支持
5.6.3 保護(hù)和指令集系統(tǒng)結(jié)構(gòu)
5.7 使用有限狀態(tài)機(jī)來控制簡單的cache
5.7.1 一個(gè)簡單的cache
5.7.2 有限狀態(tài)機(jī)
5.7.3 一個(gè)簡單的cache控制器的有限狀態(tài)機(jī)
5.8 并行與存儲(chǔ)器層次結(jié)構(gòu):cache一致性
5.8.1 實(shí)現(xiàn)一致性的基本方案
5.8.2 監(jiān)聽協(xié)議
5.9 高級(jí)內(nèi)容:實(shí)現(xiàn)cache控制器
5.10 實(shí)例:AMD Opteron X4(Barcelona)和Intel Nehalem的存儲(chǔ)器層次結(jié)構(gòu)
5.10.1 Nehalem和Opteron的存儲(chǔ)器層次結(jié)構(gòu)
5.10.2 減少缺失代價(jià)的技術(shù)
5.11 謬誤和陷阱
5.12 本章小結(jié)
5.13 拓展閱讀
5.14 練習(xí)題
第6章 存儲(chǔ)器和其他I/O主題
6.1 引言
6.2 可信度、可靠性和可用性
6.3 磁盤存儲(chǔ)器
6.4 快閃式存儲(chǔ)器
6.5 連接處理器、內(nèi)存以及I/O設(shè)備
6.5.1 互聯(lián)基礎(chǔ)
6.5.2 x86處理器的I/O互聯(lián)
6.6 為處理器、內(nèi)存和操作系統(tǒng)提供I/O設(shè)備接口
6.6.1 給I/O設(shè)備發(fā)送指令
6.6.2 與處理器通信
6.6.3 中斷優(yōu)先級(jí)
6.6.4 在設(shè)備與內(nèi)存之間傳輸數(shù)據(jù)
6.6.5 直接存儲(chǔ)器訪問和內(nèi)存系統(tǒng)
6.7 I/O性能度量:磁盤和文件系統(tǒng)的例子
6.7.1 事務(wù)處理I/O基準(zhǔn)程序
6.7.2 文件系統(tǒng)和Web I/O的基準(zhǔn)程序
6.8 設(shè)計(jì)I/O系統(tǒng)
6.9 并行性與I/O:廉價(jià)磁盤冗余陣列
6.9.1 無冗余(RAID 0)
6.9.2 鏡像(RAID 1)
6.9.3 錯(cuò)誤檢測和糾錯(cuò)碼(RAID 2)
6.9.4 位交叉奇偶校驗(yàn)(RAID 3)
6.9.5 塊交叉奇偶校驗(yàn)(RAID 4)
6.9.6 分布式塊交叉奇偶校驗(yàn)(RAID 5)
6.9.7 P+Q冗余(RAID 6)
6.9.8 RAID小結(jié)
6.10 實(shí)例:Sun Fire x4150服務(wù)器
6.11 高級(jí)主題:網(wǎng)絡(luò)
6.12 謬誤與陷阱
6.13 本章小結(jié)
6.14 拓展閱讀
6.15 練習(xí)題
第7章 多核、多處理器和集群
7.1 引言
7.2 創(chuàng)建并行處理程序的難點(diǎn)
7.3 共享存儲(chǔ)多處理器
7.4 集群和其他消息傳遞多處理器
7.5 硬件多線程
7.6 SISD、MIMD、SIMD、SPMD和向量機(jī)
7.6.1 在x86中的SIMD:多媒體擴(kuò)展
7.6.2 向量機(jī)
7.6.3 向量與標(biāo)量的對(duì)比
7.6.4 向量與多媒體擴(kuò)展的對(duì)比
7.7 圖形處理單元簡介
7.7.1 NVIDIA GPU體系結(jié)構(gòu)簡介
7.7.2 深入理解GPU
7.8 多處理器網(wǎng)絡(luò)拓?fù)浜喗?br /> 7.9 多處理器基準(zhǔn)測試程序
7.10 Roofline:一個(gè)簡單的性能模型
7.10.1 Roofline模型
7.10.2 兩代Opteron的比較
7.11 實(shí)例:使用屋頂線模型評(píng)估四種多核處理器
7.11.1 4個(gè)多核系統(tǒng)
7.11.2 稀疏矩陣
7.11.3 結(jié)構(gòu)化網(wǎng)格
7.11.4 生產(chǎn)率
7.12 謬誤與陷阱
7.13 本章小結(jié)
7.14 拓展閱讀
7.15 練習(xí)題
附錄A 圖形和計(jì)算GPU
A.1 引言
A.1.1 GPU發(fā)展簡史
A.1.2 異構(gòu)系統(tǒng)
A.1.3 GPU發(fā)展成了可擴(kuò)展的并行處理器
A.1.4 為什么使用CUDA和GPU計(jì)算
A.1.5 GPU統(tǒng)一了圖形和計(jì)算
A.1.6 GPU可視化計(jì)算的應(yīng)用
A.2 GPU系統(tǒng)架構(gòu)
A.2.1 異構(gòu)CPU-GPU系統(tǒng)架構(gòu)
A.2.2 GPU接口和驅(qū)動(dòng)
A.2.3 圖形邏輯流水線
A.2.4 將圖形流水線映射到統(tǒng)一的GPU處理器
A.2.5 基本的統(tǒng)一GPU結(jié)構(gòu)
A.3 可編程GPU
A.3.1 為實(shí)時(shí)圖形編程
A.3.2 邏輯圖形流水線
A.3.3 圖形渲染程序
A.3.4 像素渲染示例
A.3.5 并行計(jì)算應(yīng)用編程
A.3.6 使用CUDA進(jìn)行可擴(kuò)展并行編程
A.3.7 一些限制
A.3.8 體系結(jié)構(gòu)隱含的問題
A.4 多線程的多處理器架構(gòu)
A.4.1 大規(guī)模多線程
A.4.2 多處理器體系結(jié)構(gòu)
A.4.3 單指令多線程(SIMT)
A.4.4 SIMT warp執(zhí)行和分支
A.4.5 管理線程和線程塊
A.4.6 線程指令
A.4.7 指令集架構(gòu)(ISA)
A.4.8 流處理器(SP)
A.4.9 特殊功能單元(SFU)
A.4.10 與其他多處理器的比較
A.4.11 多線程多處理器總結(jié)
A.5 并行存儲(chǔ)系統(tǒng)
A.5.1 DRAM的考慮
A.5.2 cache
A.5.3 MMU
A.5.4 存儲(chǔ)器空間
A.5.5 全局存儲(chǔ)器
A.5.6 共享存儲(chǔ)器
A.5.7 局部存儲(chǔ)器
A.5.8 常量存儲(chǔ)器
A.5.9 紋理存儲(chǔ)器
A.5.10 表面
A.5.11 load/store訪問
A.5.12 ROP
A.6 浮點(diǎn)算術(shù)
A.6.1 支持的格式
A.6.2 基本算術(shù)
A.6.3 專用算術(shù)
A.6.4 性能
A.6.5 雙精度
A.7 資料:NVIDIA GeForce 8800
A.7.1 流處理器陣列(SPA)
A.7.2 紋理/處理器簇(TPC)
A.7.3 流多處理器(SM)
A.7.4 指令集
A.7.5 流處理器(SP)
A.7.6 特殊功能單元(SFU)
A.7.7 光柵化
A.7.8 光柵操作處理器(ROP)和存儲(chǔ)系統(tǒng)
A.7.9 可擴(kuò)展性
A.7.10 性能
A.7.11 密集線性代數(shù)性能
A.7.12 FFT性能
A.7.13 排序性能
A.8 資料:將應(yīng)用映射到GPU
A.8.1 稀疏矩陣
A.8.2 在共享存儲(chǔ)器中進(jìn)行緩存
A.8.3 掃描和歸約
A.8.4 基數(shù)排序
A.8.5 GPU上的N-Body應(yīng)用
A.9 謬誤與陷阱
A.10 小結(jié)
A.11 拓展閱讀
附錄B 匯編器、鏈接器和SPIM仿真器
B.1 引言
B.1.1 什么時(shí)候使用匯編語言
B.1.2 匯編語言的缺點(diǎn)
B.2 匯編器
B.2.1 目標(biāo)文件的格式
B.2.2 附加工具
B.3 鏈接器
B.4 加載
B.5 內(nèi)存的使用
B.6 過程調(diào)用規(guī)范
B.6.1 過程調(diào)用
B.6.2 過程調(diào)用舉例
B.6.3 另外一個(gè)過程調(diào)用的例子
B.7 異常和中斷
B.8 輸入和輸出
B.9 SPIM
B.10 MIPS R2000匯編語言
B.10.1 尋址方式
B.10.2 匯編語法
B.10.3 MIPS指令編碼
B.10.4 指令格式
B.10.5 常數(shù)操作指令
B.10.6 比較指令
B.10.7 分支指令
B.10.8 跳轉(zhuǎn)指令
B.10.9 陷阱指令
B.10.10 取數(shù)指令
B.10.11 保存指令
B.10.12 數(shù)據(jù)傳送指令
B.10.13 浮點(diǎn)運(yùn)算指令
B.10.14 異常和中斷指令
B.11 小結(jié)
B.12 參考文獻(xiàn)
B.13 練習(xí)題
章節(jié)摘錄
版權(quán)頁:插圖:存儲(chǔ)器層次結(jié)構(gòu)可以由多層構(gòu)成,但是數(shù)據(jù)每次只能在相鄰的兩個(gè)層次之間進(jìn)行復(fù)制。因此我們將注意力重點(diǎn)集中在兩個(gè)層次上。高層的存儲(chǔ)器靠近處理器,比低層存儲(chǔ)器容量小且訪問速度更快,這是因?yàn)樗捎昧顺杀靖叩募夹g(shù)來實(shí)現(xiàn)的。如圖5-2中所示,我們將一個(gè)兩級(jí)層次結(jié)構(gòu)中存儲(chǔ)信息的最小單元稱為塊(block)或行(line),就像在圖書館中,一個(gè)信息塊就是一本書。存儲(chǔ)系統(tǒng)采用層次結(jié)構(gòu)后,用戶對(duì)于存儲(chǔ)器的認(rèn)識(shí)就是:它的容量和層次結(jié)構(gòu)和容量最大的那層存儲(chǔ)器相同,而訪問速度和最快的那層存儲(chǔ)器相當(dāng)。在很多嵌入式系統(tǒng)中,閃存已經(jīng)代替了磁盤,對(duì)于臺(tái)式計(jì)算機(jī)和服務(wù)器來說可能會(huì)在存儲(chǔ)層次中引入新的一層;見6.4 節(jié)。被認(rèn)為一個(gè)是高層次,一個(gè)是低層次在每一層中,那些存儲(chǔ)信息的最小單元被稱為塊或者行。通常在層次之間復(fù)制時(shí)按整塊進(jìn)行傳輸。如果處理器需要的數(shù)據(jù)存放在高層存儲(chǔ)器中的某個(gè)塊中,則稱為一次命中(這就好像正好從書桌上的一本書中找到所需的信息一樣)。如果在高層存儲(chǔ)器中沒有找到所需的數(shù)據(jù),這次數(shù)據(jù)請(qǐng)求則稱為一次缺失。隨后訪問低層存儲(chǔ)器來尋找包含所需數(shù)據(jù)的那一塊(如同從書桌旁走到書架前去尋找所需的書籍)。命中率,或命中比率,是在高層存儲(chǔ)器中找到數(shù)據(jù)的存儲(chǔ)訪問比例,通常被當(dāng)成存儲(chǔ)器層次結(jié)構(gòu)性能的一個(gè)衡量標(biāo)準(zhǔn)。缺失率(1-命中率)則是數(shù)據(jù)在高層存儲(chǔ)器中沒有找到的存儲(chǔ)訪問比例。追求高性能是我們使用存儲(chǔ)器層次結(jié)構(gòu)的主要目的,因而命中和缺失的執(zhí)行時(shí)間就顯得尤為重要。命中時(shí)間是指訪問存儲(chǔ)器層次結(jié)構(gòu)中的高層存儲(chǔ)器所需要的時(shí)間,包括了判斷當(dāng)前訪問是命中還是缺失所需的時(shí)間(瀏覽書桌上書籍所花費(fèi)的時(shí)間)。缺失代價(jià)是將相應(yīng)的塊從低層存儲(chǔ)器替換到高層存儲(chǔ)器中,以及將該信息塊傳送給處理器的時(shí)間之和(從書架上取另一本書并將它放到桌上的時(shí)間),由于較高存儲(chǔ)層次容量較小并且使用了快速的存儲(chǔ)器部件,因此比起對(duì)存儲(chǔ)層次中較低層的訪問,命中時(shí)間要少得多,這也是缺失代價(jià)的主要組成部分。(同樣,查找書桌上書籍的時(shí)間比站起來到書架前查找一本新書所需的時(shí)間要少得多)。在這一章中我們也將看到,用來構(gòu)建存儲(chǔ)器層次結(jié)構(gòu)的這些概念也將影響到一臺(tái)計(jì)算機(jī)的許多其他方面,包括操作系統(tǒng)如何管理存儲(chǔ)器和I/O,編譯器如何產(chǎn)生代碼,甚至對(duì)應(yīng)用程序如何使用計(jì)算機(jī)也產(chǎn)生一定影響。當(dāng)然,由于所有程序花費(fèi)大量時(shí)間訪問存儲(chǔ)器,因而存儲(chǔ)系統(tǒng)必然成為評(píng)估機(jī)器性能的一個(gè)主要指標(biāo)。利用存儲(chǔ)器層次結(jié)構(gòu)來達(dá)到性能的提升意味著,在過去程序員可以把存儲(chǔ)器看成是一個(gè)平臺(tái)隨機(jī)訪問存儲(chǔ)設(shè)備,而現(xiàn)在必須理解存儲(chǔ)層次結(jié)構(gòu)如何工作才能獲得良好的性能。稍后我們將舉例來說明其重要性(見圖5-18)。
編輯推薦
《計(jì)算機(jī)組成與設(shè)計(jì):硬件、軟件接口(原書第4版)》特色:涵蓋從串行計(jì)算到并行計(jì)算的革命性變革,新增了關(guān)于并行化的一章,并且每章中還有一些強(qiáng)調(diào)并行硬件和軟件主題的小節(jié)。新增一個(gè)由NVIDIA的首席科學(xué)家和架構(gòu)主管撰寫的附錄,介紹了現(xiàn)代GPU的出現(xiàn)和重要性,首次詳細(xì)描述了這個(gè)針對(duì)可視計(jì)算進(jìn)行了優(yōu)化的高度并行化、多線程、多核的處理器。描述一種度量多核性能的獨(dú)特方法——Roofline模型,自帶AMDOpteronX4、IntelXeon5000、SunUltraSPARCT2和IBM Cell的基準(zhǔn)測試和分析。涵蓋一些關(guān)于閃存和虛擬機(jī)的新內(nèi)容。提供了大量富有啟發(fā)性的練習(xí)題。將AMDOpteronX4和Inter Nehalem作為貫穿《計(jì)算機(jī)組成與設(shè)計(jì):硬件、軟件接口(原書第4版)》的實(shí)例。用SPECCPU2006組件更新了所有處理器性能實(shí)例。這本最暢銷的計(jì)算機(jī)組成書籍經(jīng)過全面更新,關(guān)注現(xiàn)今發(fā)生在計(jì)算機(jī)體系結(jié)構(gòu)領(lǐng)域的革命性變革二從單處理器發(fā)展到多核微處理器,從串行發(fā)展到并行。與前幾版一樣,《計(jì)算機(jī)組成與設(shè)計(jì):硬件、軟件接口(原書第4版)》采用了MIPS處理器來展示計(jì)算機(jī)硬件技術(shù)、匯編語言、計(jì)算機(jī)算術(shù)、流水線、存儲(chǔ)器層次結(jié)構(gòu)以及I/O等基本功能。此外,奉書還包括一些關(guān)于ARM和x86體系結(jié)構(gòu)的介紹。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載
計(jì)算機(jī)組成與設(shè)計(jì) PDF格式下載