-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
軟硬件融合(超大規模云計算架構創新之路) 版權信息
- ISBN:9787121409226
- 條形碼:9787121409226 ; 978-7-121-40922-6
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
軟硬件融合(超大規模云計算架構創新之路) 本書特色
適讀人群 :云計算,架構,軟硬件,融合,創新,優化,計算機體系所有技術人員★ 芯片及互聯網行業十年以上工作經驗分享 ★ 從多個角度講解了構成軟硬件融合的技術 ★ 案例貼近前沿,內容深入淺出,通俗易懂 ★ 知識覆蓋面廣,可使讀者迅速擴大知識面 ★ 進而輕松駕馭軟硬件融合的技術大潮 新技術層出不窮并且快速迭代, 該如何根本性的解決這一挑戰? CPU性能瓶頸,DPU脫穎而出? 這,只是問題的開始…… 人工智能對算力和數據量的要求都極其龐大, 什么樣的計算架構,才能釋放AI處理器的強勁動力? 云場景的異構加速平臺該如何構建? GPU、FPGA還是ASIC/DSA? 軟件足夠靈活,硬件足夠高效。 魚和熊掌,可否兼得? 本書將解決以上所有問題。 ★ 軟件背景的同學,可以更深刻地認識硬件, 加深對軟硬件之間聯系的理解,更好地駕馭硬件 ★ 硬件背景的同學,可以更全面宏觀地看待問題, 理解需求、產品、系統、架構等多方面的權衡
軟硬件融合(超大規模云計算架構創新之路) 內容簡介
物聯網、大數據及人工智能等新興技術推動云計算持續、快速地發展,底層硬件越來越無法滿足上層軟件的發展和迭代需求。本書通過探尋軟硬件的技術本質,尋找能夠使軟件靈活性和硬件高效性相結合的方法,幫助有軟件背景的讀者更深刻地認識硬件,加深對軟硬件之間聯系的理解,并且更好地駕馭硬件;同時幫助有硬件背景的讀者站在更全面的視角宏觀地看待問題,理解需求、產品、系統、架構等多方面的權衡。 本書共9章:章為云計算底層軟硬件,第2章為軟硬件融合綜述,第3章為計算機體系結構基礎,第4章為軟硬件接口,第5章為算法加速和任務卸載,第6章為虛擬化硬件加速,第7章為異構加速,第8章為云計算體系結構趨勢,第9章為融合的系統。 本書立意新穎,案例貼近前沿,內容由淺入深,并且“展望未來”,可以幫助廣大互聯網及IT行業的軟硬件工程師更好地理解軟件、硬件及兩者之間的內在聯系,也可以作為計算機相關專業學生的技術拓展讀物。
軟硬件融合(超大規模云計算架構創新之路) 目錄
引言
第1章 云計算底層軟硬件
1.1 云計算概述
1.1.1 云計算的概念
1.1.2 IaaS、PaaS和SaaS
1.2 IaaS層核心服務
1.2.1 計算類服務
1.2.2 存儲類服務
1.2.3 網絡類服務
1.2.4 IaaS層服務總結
1.3 云計算的特點
1.3.1 更大的規模
1.3.2 更“大”的數據
1.3.3 更多的租戶
1.3.4 更復雜的網絡
1.3.5 安全問題無處不在
1.3.6 面向特定應用場景的云計算服務
1.3.7 服務接口的兼容性和通用性
1.4 底層軟硬件挑戰
1.4.1 業務異構加速
1.4.2 工作任務卸載
1.4.3 軟硬件接口的標準化和靈活性
1.4.4 硬件處理的虛擬化和個性化
1.4.5 業務和管理物理分離
1.4.6 硬件的功能擴展
1.4.7 讓硬件快速迭代
1.4.8 硬件高可用
1.5 總結
第2章 軟硬件融合綜述
2.1 軟硬件基本概念
2.1.1 軟件和硬件
2.1.2 FPGA、ASIC和SoC
2.1.3 硬件加速原理
2.2 軟硬件劃分
2.2.1 三個維度
2.2.2 綜合分析
2.2.3 平臺選擇
2.3 軟硬件協作
2.3.1 多平臺混合架構
2.3.2 軟硬件平臺的協作
2.3.3 軟硬件平臺的交互
2.4 軟硬件融合
2.4.1 軟硬件融合的概念
2.4.2 軟硬件融合的特點
2.4.3 軟硬件融合技術
第3章 計算機體系結構基礎
3.1 計算機原理
3.1.1 處理器架構:從馮·諾依曼架構到RISC-V
3.1.2 內存地址:從尋址模式到MMU
3.1.3 I/O:從CPU中斷到DMA
3.1.4 多核互連:從傳統總線到網狀總線
3.1.5 服務器板級架構
3.2 存儲
3.2.1 緩存和存儲分層結構
3.2.2 本地存儲:磁盤分區和邏輯/物理卷
3.2.3 分布式存儲:GFS和存儲的“溫度”
3.3 網絡
3.3.1 基礎物理網絡:分層和拓撲
3.3.2 虛擬網絡:VLAN和VxLAN
3.3.3 軟件定義網絡:從OpenFlow到P4
3.4 虛擬化
3.4.1 虛擬化的層次、定義和分類
3.4.2 CPU虛擬化:從軟件模擬到完全硬件
3.4.3 內存虛擬化:影子頁表和EPT
3.4.4 I/O設備虛擬化:從軟件模擬到SR-IOV
3.4.5 容器虛擬化:Docker和Kubernetes介紹
第4章 軟硬件接口
4.1 軟硬件接口概述
4.1.1 軟硬件接口定義
4.1.2 生產者-消費者模型
4.1.3 用戶態的PMD:DPDK和SPDK
4.2 總線互連
4.2.1 AMBA總線
4.2.2 片上網絡NoC總線
4.2.3 片間高速總線PCIe及SR-IOV
4.2.4 對稱的緩存一致性總線CCIX
4.2.5 非對稱的緩存一致性總線CXL
4.2.6 總線互連總結
4.3 通用接口Virtio
4.3.1 Virtio寄存器
4.3.2 Virtqueue交互隊列
4.3.3 Virtio交互
4.3.4 總結
4.4 高速網絡接口RDMA
4.4.1 基本概念
4.4.2 RoCE分層
4.4.3 RDMA接口
4.4.4 RDMA總結
4.5 高速存儲接口NVMe
4.5.1 NVMe概述
4.5.2 NVMe寄存器
4.5.3 NVMe隊列
4.5.4 NVMe命令結構
4.5.5 網絡存儲接口NVMeoF
4.5.6 NVMe及NVMeoF總結
4.6 軟硬件接口總結
4.6.1 接口分層
4.6.2 接口共享
第5章 算法加速和任務卸載
5.1 基本概念
5.1.1 硬件加速
5.1.2 硬件處理模塊
5.1.3 算法加速和任務卸載的概念
5.2 算法加速
5.2.1 加密算法加速
5.2.2 壓縮算法加速
5.2.3 數據冗余算法加速
5.2.4 正則表達式算法加速
5.2.5 加速器性能設計原則
5.3 任務卸載
5.3.1 任務卸載模型
5.3.2 IPsec卸載
5.3.3 虛擬網絡卸載
5.3.4 遠程存儲卸載
5.3.5 虛擬化卸載
5.4 算法加速和任務卸載總結
5.4.1 算法加速是基礎
5.4.2 任務卸載是多系統協作
第6章 虛擬化硬件加速
6.1 基本概念
6.1.1 軟硬件中的抽象
6.1.2 虛擬化抽象
6.1.3 虛擬化模型
6.1.4 虛擬化加速的必要性
6.2 虛擬化的硬件處理
6.2.1 流水線處理
6.2.2 虛擬化映射
6.2.3 緩存機制
6.2.4 通用虛擬化流水線
6.3 網絡虛擬化處理
6.3.1 包處理用于網絡虛擬化
6.3.2 定制的網絡包處理
6.3.3 ASIC軟件可編程包處理
6.3.4 FPGA硬件可編程包處理
6.3.5 案例:Mellanox FlexFlow
6.3.6 網絡包處理總結
6.4 存儲虛擬化處理
6.4.1 分布式存儲Ceph
6.4.2 以事務為單位的存儲處理
6.4.3 遠程存儲虛擬化加速
6.4.4 本地存儲虛擬化加速
6.5 虛擬化硬件加速總結
6.5.1 靈活的高性能流水線
6.5.2 高性能緩存機制
6.5.3 可軟件編程、通用、數據流驅動的數據處理引擎
6.5.4 虛擬化硬件加速的意義
6.5.5 其他虛擬化加速場景
第7章 異構加速
7.1 異構計算概述
7.1.1 基本概念(并行計算、異構計算)
7.1.2 典型案例
7.1.3 性能約束和優化
7.1.4 易用性思考
7.2 GPU和CUDA
7.2.1 GPU和CUDA概念
7.2.2 GPU硬件架構
7.2.3 CUDA編程模型
7.3 OpenCL和FPGA異構計算
7.3.1 OpenCL
7.3.2 Xilinx SDAccel
7.3.3 英特爾加速棧
7.4 DSA
7.4.1 DSA發展背景
7.4.2 DSA典型領域:DNN
7.4.3 ASIC實現:谷歌TPU
7.4.4 FPGA實現:微軟Catapult
7.4.5 Chiplet實現:OCP ODSA
7.5 異構加速計算總結
7.5.1 平臺選擇(GPU、FPGA、ASIC/DSA)
7.5.2 異構計算加速優化
第8章 云計算體系結構趨勢
8.1 概述
8.2 業務和管理分離
8.2.1 虛擬化視角:I/O及管理的卸載
8.2.2 體系結構視角:以數據為中心
8.2.3 Nitro系統
8.2.4 Mellanox Bluefield DPU
8.2.5 總結
8.3 業務的異構加速
8.3.1 業務加速概述
8.3.2 DSA加速:谷歌TPU服務
8.3.3 FPGA加速:FaaS
8.3.4 異構計算架構演進
8.4 存儲的加速和定制
8.4.1 存儲概述
8.4.2 熱存儲服務器:Xilinx NVMeoF參考設計
8.4.3 機架級冷存儲:微軟Pelican
8.5 網絡可編程和性能優化
8.5.1 數據中心網絡綜述
8.5.2 數據面編程交換芯片
8.5.3 高性能網絡優化
8.6 硬件定制
8.6.1 硬件定制概述
8.6.2 亞馬遜的硬件定制
8.6.3 OCP開放計算項目
第9章 融合的系統
9.1 軟硬件融合系統棧
9.1.1 系統邊界:多數據中心
9.1.2 數據中心的系統堆棧
9.2 分層的系統實現
9.2.1 迭代的系統
9.2.2 分域的硬件平臺
9.2.3 不同層次的實現
9.2.4 軟硬件協同設計
9.3 深層次開放合作
9.3.1 軟硬件的距離越來越大
9.3.2 互聯網公司自研芯片的優劣勢
9.3.3 深層次的開放合作
參考文獻
軟硬件融合(超大規模云計算架構創新之路) 節選
5.4 算法加速和任務卸載總結 算法加速是各種硬件加速的基礎,從系統中提煉核心的算法并將其硬件實現,以達到加速的目的。任務有可能全部卸載,也有可能部分卸載;任務的控制面有可能卸載,也有可能不卸載。任務卸載需要通過一定的基礎框架機制來快速實現兩個或多個系統之間的協作。 5.4.1 算法加速是基礎 算法加速是一切硬件加速的基礎,需要通過軟硬件劃分,合理地確定算法復雜度及功能的彈性。適合算法加速的軟件任務具有一定的共同特征:高密度的計算和訪存。 1.算法加速核心 硬件加速本質上是把密集的計算和數據處理(不管是算法加速或任務卸載)都通過專用的硬件算法加速模塊完成。如圖5.21所示,任務卸載核心的是任務卸載硬件部分實現的特定算法加速器,外圍的軟件、硬件接口在保證交互性能(不成為瓶頸)的情況下,加速性能則完全依賴算法加速模塊本身。 因此,在系統設計和算法硬件實現的時候,選擇什么樣的算法、算法具有什么樣的參數特征及I/O規格定義等,以及算法實現的微架構(如流水線、并行、頻率、吞吐量、延時等),會變得非常關鍵。并且,定制的算法加速器也需要具備一定的配置能力。例如,AES算法加速器的加密和解密是共享處理引擎的,只是通過設置不同的處理模式(加密或解密模式)來進行加密或解密處理的。 2.算法加速的設計權衡 通用CPU加入了各種復雜的向量處理及AES等擴展指令,同時具有非常豐富和靈活的軟件生態;GPU提供數以千計的線程并行,同時在框架及庫方面對很多場景進行了優化,整個GPU生態相當成熟。這些CPU、GPU平臺上的優勢都不同程度地對定制算法加速(包括FPGA實現和ASIC實現)的應用范圍形成了擠壓。 算法加速還需要考慮數據交互的開銷。算法加速與其他軟件或硬件的I/O數據交互需要一定的代價(如數據傳輸延遲),這部分代價會降低算法加速的整體性能。算法加速要考慮到算法加速器的I/O總線帶寬和加速引擎處理帶寬的平衡:在總線帶寬足夠的時候,通過增加并行的加速處理引擎數量來提升處理帶寬;在總線帶寬可能成為瓶頸的時候,要考慮增加總線帶寬使之不成為性能瓶頸,或者通過優化數據交互來提升總線利用率等。 面向特定場景性能優化、定制的硬件算法加速器的靈活性遠小于軟件,并且算法加速整體開發的工作量很大,系統的復雜度提升。因此,算法加速需要面向大規模計算和數據處理的場景,并且具有足夠大的規模化應用,這樣才能真正通過算法加速來提升性能和降低整體成本。 3.適合加速的程序 通常我們會有一個基本的認識:如果一個程序消耗CPU資源較多,其性能、延遲等指標較難滿足系統要求,那么會考慮通過算法加速的方式來優化性能、成本等各項指標。我們以運行于CPU的工作任務程序(指令)流為樣本,深入分析程序流的規律,看哪些指令序列適合硬件加速。 我們分析不同類型的CPU指令加速特征,具體如表5.5所示。 總結而言,一個適合硬件加速的程序一般具有如下基本特征。 l 大批量的數據處理。 l 計算密集型。 l 具有很多次的循環處理。 l CPU計算資源占用很大,計算成本高。 l 處理吞吐量、延遲等性能不滿足系統要求。 l 業務規模足夠大。 5.4.2 任務卸載是多系統協作 我們通過如下三個方面來理解任務卸載的多系統協作。 l 軟硬件協作,既包括控制面和數據面的協作,也包括不同任務或子任務間的協作。 l 既可能是任務全部卸載,也可能是任務部分卸載。 l 任務卸載需要有一套通用的快速開發軟硬件框架。 1.任務卸載的軟硬件協作 我們在5.3.1節介紹了任務卸載模型,在這里,以卸載任務的硬件處理部分為研究對象,分析整個任務硬件處理模塊的各種交互。 如圖5.31所示,假設任務由硬件處理的子任務A和軟件處理的子任務B組成,則任務的硬件部分(子任務A)通常需要如下四個方面的交互協作。 l 任務硬件部分的驅動程序:控制任務硬件處理部分的初始化和運行。 l 任務的軟件部分(子任務B):和任務硬件部分協作,完成整個任務,兩者之間需要數據交互。 l 任務的硬件部分跟其他硬件處理模塊的接口:用于跟其他硬件處理模塊的數據交互。 l 任務的軟件接口:用于跟其他運行于軟件的任務進行數據交互。
軟硬件融合(超大規模云計算架構創新之路) 作者簡介
黃朝波 芯片及互聯網行業十年以上工作經驗,UCloud芯片及硬件研發負責人。 曾在Marvell從事ARMv7/v8架構高性能多核CPU設計和驗證,在Startup公司Simplight從事自主多線程處理器及4G LTE基帶SOC芯片設計。 物聯網公司創業經歷,技術負責人,負責從硬件、軟件到云平臺的研發工作。本科畢業于西北工業大學,研究生畢業于國防科技大學,在國防科技大學學習期間有幸參與“飛騰”處理器項目研發。
- >
中國歷史的瞬間
- >
月亮與六便士
- >
唐代進士錄
- >
中國人在烏蘇里邊疆區:歷史與人類學概述
- >
人文閱讀與收藏·良友文學叢書:一天的工作
- >
回憶愛瑪儂
- >
伊索寓言-世界文學名著典藏-全譯本
- >
小考拉的故事-套裝共3冊