代碼優(yōu)化

出版時間:2004-10-1  出版社:電子工業(yè)出版社  作者:(美)Kris Kaspersky  頁數:330  字數:462000  譯者:譚明金  
Tag標簽:無  

內容概要

本書系統(tǒng)深入地介紹了各種代碼優(yōu)化編程技術。全書分為4章。第1章集中介紹如何確定程序中消耗CPU時鐘最多的熱點代碼的所謂程序剖析技術以及典型部分工具的實用知識。第2,3章分別全面介紹RAM了系統(tǒng)與高速緩存子系統(tǒng)的代碼優(yōu)化知識。第4章主要介紹了機器代碼優(yōu)化技術。各章在討論基本原理的同時詳細給出了代碼實例,并對優(yōu)化性能進行了定量的分析。    該書特別適合于作為應用程序員及系統(tǒng)程序員的學習與開發(fā)之用。同時,本書對在硬件方面的專業(yè)人員與技術工作者有一定的參考價值。

作者簡介

Kris Kasperskty是黑客破譯、反匯編與代碼優(yōu)化技術的專欄作家。他一直致力于研究安全與系統(tǒng)程序設計方面的問題,內容涉及編譯器開發(fā)、優(yōu)化技術、安全機制研究、實時操作系統(tǒng)內核的創(chuàng)建以及反病毒程序的設計等多個領域。
正是因為他雖“雜”卻“博”、雖“博”卻“深”,才

書籍目錄

譯者序第1章 程序剖分  1.1 剖分的目標與目的    1.1.1 總執(zhí)行時間    1.1.2 執(zhí)行時間的類型    1.1.3 處罰信息    1.1.4 調用次數    1.1.5 覆蓋層次  1.2 微剖分的基本問題     1.2.1 流水作業(yè)或者吞吐量與等待時間    1.2.2 測不準    1.2.3 硬件優(yōu)化    1.2.4 低分辨率  1.3 宏剖分的基本問題    1.3.1 運行時間的不一致性    1.3.2 二度運行問題    1.3.3 負面效應    1.3.4 單臺機器的代碼優(yōu)化問題  1.4 最新剖分軟件概述    1.4.1 Intel VTune    1.4.2 AMD Code Analyst    1.4.3 Microsoft的profile.exe  1.5 開發(fā)自己的剖分軟件  1.6 VTune實用剖分知識    1.6.1 第一步:刪除printf函數    1.6.2 第二步:將strlen函數體移出循環(huán)    1.6.3 第三步:對齊數據    1.6.4 第四步:刪除strlen函數    1.6.5 第五步:刪除除法操作    1.6.6 第六步:刪除性能監(jiān)測代碼    1.6.7 第七步:函數組合    1.6.8 第八步:減少內存訪問操作的次數    1.6.9 第九步:把VTune當做私人教練    1.6.10 第十步:下結論    1.6.11 結果與預測第2章 RAM子系統(tǒng)  2.1 RAM概述  2.2 RAM的層次結構  2.3 隨機存取存儲器  2.4 RAM的設計與工作原理    2.4.1 內核部分    2.4.2 傳統(tǒng)DRAM(頁面模式的DRAM)    2.4.3 DRAM的發(fā)展    2.4.4 快速頁面模式的DRAM(FPM DRAM)    2.4.5 存儲器時序    2.4.6 擴展數據輸出DRAM(EDO DRAM)    2.4.7 突發(fā)式EDO DRAM(BEDO DRAM)    2.4.8 同步DRAM(SDRAM)    2.4.9 倍速SDRAM(DDR SDRAM)或者SDRAM II    2.4.10 直接Rambus DRAM(直接RDRAM)    2.4.11 不同存儲器類型的比較  2.5 存儲器與處理器之間的交互操作    2.5.1 計算全存取時間  2.6 DRAM物理地址到邏輯地址的映射  2.7 內存優(yōu)化操作    2.7.1 建議    2.7.2 展開循環(huán)    2.7.3 消除數據相關性    2.7.4 數據并行處理    2.7.5 優(yōu)化引用數據結構    2.7.6 減小數據結構的尺寸    2.7.7 DRAM板塊上的數據分布策略    2.7.8 規(guī)劃數據流    2.7.9 按字節(jié)、雙字與四字進行內存處理    2.7.10 數據對齊    2.7.11 內存訪問與計算的組合    2.7.12 讀寫操作的組合    2.7.13 只在必要時才訪問內存    2.7.14 內置C內存處理函數的優(yōu)化    2.7.15 內存處理函數的優(yōu)化質量    2.7.16 C字符串庫函數的優(yōu)化    2.7.17 字符串處理函數的質量優(yōu)化    2.7.18 塊處理算法的優(yōu)化    2.7.19 大型數組排序的優(yōu)化  2.8 RAM測試問題第3章 高速緩存子系統(tǒng)第4章 機器優(yōu)化

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    代碼優(yōu)化 PDF格式下載


用戶評論 (總計19條)

 
 

  •     這本書不算差,但也算不上經典,對于時間并非非常充足的人,這本書可讀可不讀,建議先去讀《深入理解計算機系統(tǒng)》中的第1部分,對代碼的優(yōu)化就可以有個基本了解,如果想繼續(xù)深入,也不一定非得讀此書,因為此書中的大量篇幅都在講內存的底層原理
  •     還能翻譯得再晦澀點么?這水平跟google翻譯差不多啊!
      "TLB"譯的那是什么啊,感覺譯者完全不懂書中的內容似的?。?!
      
      
       抱歉,你的評論太短了 抱歉,你的評論太短了 抱歉,你的評論太短了 抱歉,你的評論太短了 抱歉,你的評論太短了 抱歉,你的評論太短了 抱歉,你的評論太短了
       抱歉,你的評論太短了?。。?!
      
  •     看了這本書才發(fā)現(xiàn),自己以前那些什么“一次復制4個字節(jié)”之類的技巧只能算小聰明。程序性能瓶頸不是那么簡單就能看出來的,而是各種因素的綜合:指令流水線、內存地址對齊、操作系統(tǒng)頁面大小、Cache是否命中……
      
      如果你想優(yōu)化CPU密集的程序,本書一定要看。
      
      也有一些不足之處:舉的例子都比較老,VC++ 6.0,幾種編譯器比較也沒有gcc,沒有討論Linux操作系統(tǒng),比較新的內存(DDR2、DDR3)也沒有介紹。
  •     這本書對于搞高性能程序的人是必看的。內存不再是抽象的一個存儲單位, 而是像硬盤那樣的設備了. 從此你寫碼的時候 會注意到這條指令是訪問內存 很耗時??戳怂?, 再看glibc的代碼, 看你熟悉的memcpy,strcpy, strlen....怎么實現(xiàn)的, 你會發(fā)現(xiàn)書的寫的內容,glibc庫作者在廣泛用哦。。。
  •     講代碼底層優(yōu)化的書很少, 講的這樣底層的更少. 如果關心 CPU 級別的代碼優(yōu)化, 這本書一定要讀. 至少比讀 Intel 的手冊來節(jié)省時間.
      
      可惜的是譯者明顯這方面的功利不足,導致翻譯的質量不高. 如果你對這方面有一些研究, 那么翻譯的差一點其實也無所謂.
  •   "大量篇幅都在講內存的底層原理"你指的是tlb啊分頁啊嗎?//我沒看過,只是問問.thx
  •   最后一句看不懂
  •   你會發(fā)現(xiàn)書的寫的庫作者在用哦。。。,真看不懂
  •   你會發(fā)現(xiàn)書上寫的東西 庫的作者在用哦。。。
  •   弱問下,glibc 是什么?
  •   很不錯的書,有沒有電子版的啊,太貴了
  •   書不貴啊...看懂的話,它就只有你收入的零頭
  •   大神推薦的一定要看啊
  •   如果像我這樣沒有研究的人呢?
  •   那就祝樓上的好運嘍,哈哈
  •   圖書館的書借來了,還沒看。
  •   1.翻譯確實蛋疼。
    2.看到129頁看不動了,有時間再接著看。。
    3.這本書絕對應該加進大學選修課
  •   對待優(yōu)化,態(tài)度最重要。代碼書寫的時候需要有一些注意點,不過感覺盲目優(yōu)化也是沒有必要的,適用一些工具進行定位,尋找性能瓶頸,諸如VTune之類的工具還不錯。
  •   這本書不算差,但也算不上經典,對于時間并非非常充足的人,這本書可讀可不讀,建議先去讀《深入理解計算機系統(tǒng)》中的第1部分,對代碼的優(yōu)化就可以有個基本了解,如果想繼續(xù)深入,也不一定非得讀此書,因為此書中的大量篇幅都在講內存的底層原理
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網 手機版

京ICP備13047387號-7