注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)C/C++及其相關(guān)提高C++性能的編程技術(shù)

提高C++性能的編程技術(shù)

提高C++性能的編程技術(shù)

定 價(jià):¥33.00

作 者: (美)Dov Bulka,(美)David Mayhew著;常曉波,朱劍平譯;常曉波譯
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: C++

ISBN: 9787302065500 出版時(shí)間: 2003-06-01 包裝: 精裝
開本: 23cm 頁數(shù): 256 字?jǐn)?shù):  

內(nèi)容簡介

  很多程序員和軟件設(shè)計(jì)師都認(rèn)為追求高效的C++是一種很愚蠢的做法。他們認(rèn)為C++天生就慢,對(duì)性能要求很高的應(yīng)用程序不適合。因此,有一些領(lǐng)域是C++幾乎無法成功進(jìn)入的,如網(wǎng)絡(luò)、操作系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)程序等。本書反駁了這種觀點(diǎn)。在使商業(yè)應(yīng)用程序獲取最大性能方面,本書的兩位作者擁有第一手資料。本書說明了使用C++開發(fā)高效程序的潛力,提示了實(shí)踐中一些平常的面向?qū)ο蟮脑O(shè)計(jì)原則以及獲得大幅度性能提高的C++編程技術(shù)。本書還指出了在設(shè)計(jì)和編碼中產(chǎn)生隱含操作代價(jià)的一些常見錯(cuò)誤。本書關(guān)注強(qiáng)大和靈活性與良好性能和可伸縮性的結(jié)合,從而使兩方面均達(dá)到最佳。具體主題包括臨時(shí)對(duì)象、內(nèi)存管理、模板、繼承、虛承數(shù)、內(nèi)聯(lián)、引用計(jì)數(shù)、STL等。通過本書,您將能夠精通最佳性能技術(shù)的主要內(nèi)容。

作者簡介

  Dov Bulka在軟件開發(fā)以及向市場(chǎng)交付大型軟件產(chǎn)品方面有15年的經(jīng)驗(yàn)。他曾是IBM DominoGo Web服務(wù)器的性能設(shè)計(jì)師,一些曾出現(xiàn)在Internet上的最大型Web站點(diǎn)使用了這種服務(wù)器,包括1996年亞特蘭大奧運(yùn)會(huì)的Web站點(diǎn)。他獲得了杜克大學(xué)的計(jì)算機(jī)科學(xué)博士學(xué)位。

圖書目錄


引言
第1章 跟蹤范例
1.1 初步的跟蹤實(shí)現(xiàn)
1.1.1 發(fā)生了什么問題
1.1.2 恢復(fù)計(jì)劃
1.2 要點(diǎn)
第2章 構(gòu)造函數(shù)和析構(gòu)函數(shù)
2.1 繼承
2.2 合成
2.3 緩式構(gòu)造
2.4 冗余構(gòu)造
2.5 要點(diǎn)
第3章 虛函數(shù)
3.1 虛函數(shù)的構(gòu)造
3.2 模板和繼承
3.2.1 硬編碼
3.2.2 繼承
3.2.3 模板
3.3 要點(diǎn)
第4章 返回值優(yōu)化
4.1 按值返回的構(gòu)造
4.2 返回值優(yōu)化
4.3 計(jì)算性構(gòu)造函數(shù)
4.4 要點(diǎn)
第5章 臨時(shí)對(duì)象
5.1 對(duì)象定義
5.2 類型不匹配
5.3 按值傳遞
5.4 按值返回
5.5 使用op=()消除臨時(shí)對(duì)象
5.6 要點(diǎn)
第6章 單線程內(nèi)存池
6.1 版本0:全局函數(shù)new()和delete()
6.2 版本1:專用Rational內(nèi)存管理器
6.3 版本2:固定大小對(duì)象的內(nèi)存池
6.4 版本3:單線程可變大小內(nèi)存管理器
6.5 要點(diǎn)
第7章 多線程內(nèi)存池
7.1 版本4:實(shí)現(xiàn)
7.2 版本5:快速鎖定
7.3 要點(diǎn)
第8章 內(nèi)聯(lián)基礎(chǔ)
8.1 什么是內(nèi)聯(lián)
8.2 方法調(diào)用代價(jià)
8.3 為何使用內(nèi)聯(lián)
8.4 內(nèi)聯(lián)詳述
8.5 內(nèi)聯(lián)虛方法
8.6 通過內(nèi)聯(lián)獲得性能
8.7 要點(diǎn)
第9章 內(nèi)聯(lián)——性能方面的考慮
9.1 調(diào)用間優(yōu)化
9.2 為何不使用內(nèi)聯(lián)
9.3 開發(fā)階段和編譯時(shí)的內(nèi)聯(lián)考慮
9.4 基于配置的內(nèi)聯(lián)
9.5 內(nèi)聯(lián)規(guī)則
9.5.1 惟一
9.5.2 微小
9.6 要點(diǎn)
第10章 內(nèi)聯(lián)技巧
10.1 條件內(nèi)聯(lián)
10.2 選擇性內(nèi)聯(lián)
10.3 遞歸內(nèi)聯(lián)
10.4 對(duì)靜態(tài)局部變量進(jìn)行內(nèi)聯(lián)
10.5 與體系結(jié)構(gòu)有關(guān)的注意事項(xiàng):多寄存器集
10.6 要點(diǎn)
第11章 標(biāo)準(zhǔn)模板庫
11.1 漸近復(fù)雜度
11.2 插入
11.3 刪除
11.4 遍歷
11.5 查找
11.6 函數(shù)對(duì)象
11.7 比STL更好
11.8 要點(diǎn)
第12章 引用計(jì)數(shù)
12.1 實(shí)現(xiàn)細(xì)節(jié)
12.2 已存在類
12.3 并發(fā)引用計(jì)數(shù)
12.4 要點(diǎn)
第13章 代碼優(yōu)化
13.1 緩存
13.2 預(yù)先計(jì)算
13.3 降低靈活性
13.4 80-20規(guī)則:提高常用路徑的速度
13.5 緩式計(jì)算
13.6 無用計(jì)算
13.7 系統(tǒng)體系結(jié)構(gòu)
13.8 內(nèi)存管理
13.9 庫和系統(tǒng)調(diào)用
13.10 編譯器優(yōu)化
13.11 要點(diǎn)
第14章 設(shè)計(jì)優(yōu)化
14.1 設(shè)計(jì)靈活性
14.2 緩存
14.2.1 Web服務(wù)器時(shí)間戳
14.2.2 數(shù)據(jù)擴(kuò)展
14.2.3 公用代碼陷阱
14.3 高效的數(shù)據(jù)結(jié)構(gòu)
14.4 緩式計(jì)算
14.5 無用計(jì)算
14.6 失效代碼
14.7 要點(diǎn)
第15章 可伸縮性
15.1 SMP體系結(jié)構(gòu)
15.2 Amdahl法則
15.3 多線程和同步術(shù)語
15.4 把一個(gè)任務(wù)分解成多個(gè)子任務(wù)
15.5 緩存共享數(shù)據(jù)
15.6 無共享
15.7 部分共享
15.8 鎖的粒度
15.9 偽共享
15.10 Thundering Herd
15.11 讀/寫鎖
15.12 要點(diǎn)
第16章 系統(tǒng)體系結(jié)構(gòu)相關(guān)性
16.1 內(nèi)存層次
16.2 寄存器:內(nèi)存之王
16.3 磁盤和內(nèi)存結(jié)構(gòu)
16.4 緩存影響
16.5 緩存顛簸
16.6 避免跳轉(zhuǎn)
16.7 簡單計(jì)算勝過小分支
16.8 線程影響
16.9 上下文切換
16.10 內(nèi)核交叉
16.11 線程選擇
16.12 要點(diǎn)
參考文獻(xiàn)

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)