-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
C++高性能編程 版權信息
- ISBN:9787302620693
- 條形碼:9787302620693 ; 978-7-302-62069-3
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
C++高性能編程 本書特色
《C++高性能編程》適用于從事性能關鍵項目開發并希望學習不同技術以提高代碼性能的經驗豐富的開發人員和程序員。計算機建模、算法交易、游戲、生物信息學、基于物理的模擬、計算機輔助設計、計算基因組學或計算流體動力學等領域的程序員都可以從本書中學習到各種技術,并將之應用到自己的工作領域。 本書涉及C++高性能編程的5個重要因素,包括計算硬件、高效使用編程語言、編譯器、良好的設計和程序員自身。
C++高性能編程 內容簡介
《C++高性能編程》詳細闡述了與C++高性能編程相關的基本解決方案,主要包括性能和并發性簡介,性能測量, CPU架構、資源和性能,內存架構和性能,線程、內存和并發,并發和性能,并發數據結構,C++中的并發,高性能C++,C++中的編譯器優化,未定義行為和性能,性能設計等內容。此外,本書還提供了相應的示例、代碼,以幫助讀者進一步理解相關方案的實現過程。 本書適合作為高等院校計算機及相關專業的教材和教學參考書,也可作為相關開發人員的自學用書和參考手冊。
C++高性能編程 目錄
第1篇 性 能 基 礎
第1章 性能和并發性簡介 3
1.1 程序員要關注性能的原因 3
1.2 有關性能重要性的解釋 6
1.3 程序性能 8
1.3.1 吞吐量指標 8
1.3.2 功耗指標 9
1.3.3 實時應用性能 10
1.3.4 上下文環境 11
1.4 評估和預測性能 12
1.5 精通高性能應用程序開發 13
1.6 小結 14
1.7 思考題 15
第2章 性能測量 17
2.1 技術要求 17
2.2 性能測量示例 18
2.3 性能基準測試 25
2.3.1 C++計時器 25
2.3.2 高分辨率計時器 26
2.4 性能分析 31
2.4.1 perf性能分析器 32
2.4.2 使用perf 進行詳細性能分析 34
2.4.3 Google Performance性能分析器 37
2.4.4 使用調用圖進行性能分析 38
2.4.5 優化和內聯 42
2.4.6 實際性能分析 44
2.5 微基準測試 45
2.5.1 微基準測試的基礎知識 45
2.5.2 微基準測試和編譯器優化 48
2.5.3 Google Benchmark 51
2.5.4 微基準測試是謊言 54
2.6 小結 58
2.7 思考題 59
第3章 CPU架構、資源和性能 61
3.1 技術要求 61
3.2 CPU和性能 62
3.3 使用微基準測試性能 64
3.4 可視化指令級并行性 70
3.5 數據依賴和流水線 72
3.6 流水線和分支 77
3.6.1 分支預測 80
3.6.2 分支預測錯誤的性能分析 82
3.7 推測執行 85
3.8 復雜條件的優化 86
3.9 無分支計算 90
3.9.1 循環展開 90
3.9.2 無分支選擇 91
3.9.3 無分支計算示例 93
3.10 小結 96
3.11 思考題 97
第4章 內存架構和性能 99
4.1 技術要求 99
4.2 影響性能的不止CPU 100
4.3 測量內存訪問速度 102
4.3.1 內存架構 103
4.3.2 測量內存和緩存速度 105
4.4 內存的速度:數字 108
4.4.1 隨機內存訪問速度 108
4.4.2 順序內存訪問速度 111
4.4.3 硬件中的內存性能優化 113
4.5 優化內存性能 115
4.5.1 高效使用內存的數據結構 116
4.5.2 分析內存性能 119
4.5.3 優化內存性能的算法 121
4.6 機器里的“幽靈” 126
4.6.1 關于Spectre 127
4.6.2 Spectre攻擊示例 129
4.6.3 釋放“幽靈” 133
4.7 小結 137
4.8 思考題 137
第5章 線程、內存和并發 139
5.1 技術要求 139
5.2 理解線程和并發 139
5.2.1 關于線程 140
5.2.2 對稱多線程 141
5.2.3 線程和內存 141
5.2.4 內存受限程序和并發 145
5.3 了解內存同步的成本 146
5.4 數據共享成本高昂的原因 151
5.5 了解并發和順序 157
5.5.1 順序的需要 157
5.5.2 內存順序和內存屏障 159
5.5.3 C++中的內存順序 165
5.6 內存模型 168
5.7 小結 172
5.8 思考題 172
第2篇 并發的高級應用
第6章 并發和性能 175
6.1 技術要求 175
6.2 高效使用并發需要的條件 176
6.3 鎖、替代品及其性能 177
6.3.1 基于鎖、無鎖和無等待的程序 179
6.3.2 針對不同問題的不同鎖 181
6.3.3 鎖與無鎖的真正區別 185
6.4 并發編程的構建塊 187
6.4.1 并發數據結構的基礎知識 188
6.4.2 計數器和累加器 191
6.4.3 發布協議 196
6.5 并發編程的智能指針 198
6.5.1 發布指針 198
6.5.2 原子共享指針 201
6.6 小結 204
6.7 思考題 204
第7章 并發數據結構 205
7.1 技術要求 205
7.2 關于線程安全數據結構 205
7.2.1 *好的線程安全性 206
7.2.2 真正的線程安全性 208
7.3 線程安全棧 208
7.3.1 線程安全的接口設計 209
7.3.2 互斥鎖保護的數據結構的性能 211
7.3.3 不同用途的性能要求 213
7.3.4 有關棧性能的細節討論 217
7.3.5 同步方案的性能估計 220
7.3.6 無鎖棧 223
7.4 線程安全隊列 229
7.4.1 無鎖隊列 230
7.4.2 非順序一致的數據結構 235
7.4.3 并發數據結構的內存管理 238
7.5 線程安全列表 240
7.5.1 列表的挑戰 240
7.5.2 無鎖列表 243
7.6 小結 249
7.7 思考題 249
第8章 C++中的并發 251
8.1 技術要求 251
8.2 C++11中的并發支持 251
8.3 C++17中的并發支持 253
8.4 C++20中的并發支持 256
8.4.1 協程的基礎知識 257
8.4.2 協程C++語法 261
8.4.3 協程示例 262
8.5 小結 268
8.6 思考題 269
第3篇 設計和編寫高性能程序
第9章 高性能C++ 273
9.1 技術要求 273
9.2 關于編程語言的效率 273
9.3 不必要的復制 275
9.3.1 復制和參數傳遞 275
9.3.2 將復制作為一種實現技術 277
9.3.3 復制以存儲數據 278
9.3.4 復制返回值 279
9.3.5 使用指針避免復制 283
9.3.6 避免不必要的復制 284
9.4 低效的內存管理 285
9.4.1 不必要的內存分配 285
9.4.2 并發程序中的內存管理 289
9.4.3 避免內存碎片 290
9.5 條件執行的優化 293
9.6 小結 295
9.7 思考題 296
第10章 C++中的編譯器優化 297
10.1 技術要求 297
10.2 編譯器優化代碼 297
10.2.1 有關編譯器優化的基礎知識 298
10.2.2 函數內聯 300
10.2.3 編譯器真正知道的東西 305
10.2.4 將運行時信息轉換為編譯時信息 311
10.3 小結 314
10.4 思考題 315
第11章 未定義行為和性能 317
11.1 技術要求 317
11.2 關于未定義行為 317
11.3 產生未定義行為的緣由 320
11.4 未定義行為和C++優化 321
11.5 使用未定義行為進行高效設計 330
11.6 小結 333
11.7 思考題 334
第12章 性能設計 335
12.1 技術要求 335
12.2 設計與性能之間的相互作用 335
12.3 著眼于性能的設計 336
12.3.1 *小信息原則 337
12.3.2 *大信息原則 338
12.4 API設計注意事項 344
12.4.1 有關并發的API設計 344
12.4.2 復制和發送數據 349
12.5 優化數據訪問的設計 351
12.6 性能權衡 354
12.6.1 接口設計 354
12.6.2 組件設計 355
12.6.3 錯誤和未定義的行為 356
12.7 做出明智的設計決策 357
12.8 小結 359
12.9 思考題 359
附錄 思考題解答 361
第1章 性能和并發性簡介 361
第2章 性能測量 361
第3章 CPU架構、資源和性能 362
第4章 內存架構和性能 363
第5章 線程、內存和并發 364
第6章 并發和性能 365
第7章 并發數據結構 365
第8章 C++中的并發 366
第9章 高性能C++ 367
第10章 C++中的編譯器優化 368
第11章 未定義行為和性能 369
第12章 性能設計 369
C++高性能編程 作者簡介
費多爾·G.皮克斯,是西門子數字工業軟件公司,Mentor IC部門的首席工程科學家。
- >
【精裝繪本】畫給孩子的中國神話
- >
伯納黛特,你要去哪(2021新版)
- >
名家帶你讀魯迅:故事新編
- >
我從未如此眷戀人間
- >
姑媽的寶刀
- >
隨園食單
- >
月亮虎
- >
中國歷史的瞬間