评分
☆☆☆☆☆
翻译的不算好
评分
☆☆☆☆☆
一本老旧的C代码性能优化书,翻一翻还是可以的
评分
☆☆☆☆☆
还在读第一部分,现在还只是纸上谈兵的阶段,,,,,,,觉得不懂汇编还是四处碰壁............ 第二部分讲内存的好像有点过时,觉得没过时的部分自己又没听懂..
评分
☆☆☆☆☆
除编程技巧,计算机原理的讲解也很到位
评分
☆☆☆☆☆
coding
第1章 程序剖分
1.1 剖分的目标与目的
1.1.1 总执行时间
1.1.2 执行时间的类型
1.1. 3 处罚信息
1.1.4 调用次数
1.1.5 覆盖层次
1.2 微剖分的基本问题
1.2.1 流水作业或者吞吐量与等待时间
1.2.2 测不准
1.2.3 硬件优化
1.2.4 低分辨率
1.3 宏剖分的基本问题
1.3.1 运行时间的不一致性
1.3.2 度运行问题
1.3.3 负面效应
1.3.4 单台机器的代码优化问题
1.4 最新剖分软件概述
1.4.1 intelvtune
1.4.2 amdcodeanalyst
.1.4.3 microsoft的profile.exe
1.5 开发自己的剖分软件
1.6 vtune实用剖分知识
1.6.1 第一步:删除prinff函数
1.6.2 第二步:将strlen函数体移出循环
1.6.3 第三步:对齐数据
1.6.4 第四步:删除strlen函数
1.6.5 第五步:删除除法操作
1.6.6 第六步:删除性能监测代码
1.6.7 第七步:函数组合
1.6.8 第八步:减少内存访问操作的次数
1.6.9 第九步:把vtune当做私人教练
1.6.10 第十步:下结论
1.6.11 结果与预测
第2章 ram子系统
2.1 ram概述
2.2 ram的层次结构
2.3 随机存取存储器
2.4 ram的设计与工作原理
2.4.1 内核部分
2.4.2 传统dram(页面模式的dram)
2.4.3 dram的发展
2.4.4 快速页面模式的dram(fpmdram)
2.4.5 存储器时序
2.4.6 扩展数据输出dram(edodram)
2.4.7 突发式edodram(bedodram)
2.4.8 同步dram(sdram)
2.4.9 倍速sdram(ddrsdram)或者sdramⅱ
2.4.10 直接rambusdram(直接rdram)
2.4.11 不同存储器类型的比较
2.5 存储器与处理器之间的交互操作
2.5.1 计算全存取时间
2.6 dram物理地址到逻辑地址的映射
2.7 内存优化操作
2.7.1 建议
2.7.2 展开循环
2.7.3 消除数据相关性
2.7.4 数据并行处理
2.7.5 优化引用数据结构
2.7.6 减小数据结构的尺寸
2.7.7 dram板块上的数据分布策略
2.7.8 规划数据流
2.7.9 按字节、双字与四字进行内存处理
2.7.10 数据对齐
2.7.11 内存访问与计算的组合
2.7.12 读写操作的组合
2.7.13 只在必要时才访问内存
2.7.14 内置c内存处理函数的优化
2.7.15 内存处理函数的优化质量
2.7.16 c字符串库函数的优化
2.7.17 字符串处理函数的质量优化
2.7.18 块处理算法的优化
2.7.19 大型数组排序的优化
2.8 ram测试问题
第3章 高速缓存子系统
3.1 sram的工作原理
3.1.1 历史概况
3.1.2 内核
3.1.3 触发器的设计
3.1.4 逻辑非元件(取反器)的设计
3.1.5 sram阵列的设计
3.1.6 封装接口的设计
3.1.7 读写时序图
3.1.8 静态存储器的类型
3.2 高速缓存的工作原理
3.2.1 起源
3.2.2 高速缓存的目标与任务
3.2.3 高速缓存的组织
3.3 高速缓存与存储器存取的优化
3.3.1 处理数据的尺寸对性能的影响
3.3.2 可执行代码的尺寸对性能的影响
3.3.3 数据对齐效率
3.3.4 数据在高速缓存板块上的分布
3.3.5 使用有限联合数目的高速缓存
3.3.6 维数组的处理
3.3.7 写缓冲机制的详细说明
3.3.8 新一代x86处理器的高速缓存管理
3.3.9 预取机制的实际应用
3.3.10 内存拷贝内幕或者pentiumⅲ与pentium4的新命令
第4章 机器优化
4.1 c/c++编译器的比较分析
4.1.1 常量表达式
4.1.2 代数表达式
4.1.3 算术运算
4.1.4 分支语句
4.1.5 switch运算符
4.1.6 循环
4.1.7 函数调用
4.1.8 变量分布
4.1.9 字符串初始化
4.1.10 死码
4.1.11 常量条件
4.1.12 确定优胜者
4.2 汇编器与编译器的对决
4.2.1 历史回顾--汇编语言使春天永驻
4.2.2 评价机器优化质量的指标
4.2.3 评价机器优化质量的方法
4.2.4 对主要编译器进行比较分析
4.2.5 测试结果的讨论
4.2.6 机器优化质量的示例
4.2.7 用汇编语言创建保护代码
4.2.8 用汇编语言编程是一种创造性活动
4.2.9 结束语
4.2.10 源代码
· · · · · · (
收起)
评分
☆☆☆☆☆
这本书不算差,但也算不上经典,对于时间并非非常充足的人,这本书可读可不读,建议先去读《深入理解计算机系统》中的第1部分,对代码的优化就可以有个基本了解,如果想继续深入,也不一定非得读此书,因为此书中的大量篇幅都在讲内存的底层原理
评分
☆☆☆☆☆
总的来说,作为拓宽视野,推荐阅读! 该书作者要描述的优化策略看起来是比较简单的,也是很清晰的,站在程序员的角度来看,好多优化点只能作为参考;要工程应用中,更是仅仅作为一种编码习惯和编码考虑。 作为开拓视野,还是值得阅读。涉及硬件寄底层部分的较多,...
评分
☆☆☆☆☆
总的来说,作为拓宽视野,推荐阅读! 该书作者要描述的优化策略看起来是比较简单的,也是很清晰的,站在程序员的角度来看,好多优化点只能作为参考;要工程应用中,更是仅仅作为一种编码习惯和编码考虑。 作为开拓视野,还是值得阅读。涉及硬件寄底层部分的较多,...
评分
☆☆☆☆☆
讲代码底层优化的书很少, 讲的这样底层的更少. 如果关心 CPU 级别的代码优化, 这本书一定要读. 至少比读 Intel 的手册来节省时间. 可惜的是译者明显这方面的功利不足,导致翻译的质量不高. 如果你对这方面有一些研究, 那么翻译的差一点其实也无所谓.
评分
☆☆☆☆☆
这本书不算差,但也算不上经典,对于时间并非非常充足的人,这本书可读可不读,建议先去读《深入理解计算机系统》中的第1部分,对代码的优化就可以有个基本了解,如果想继续深入,也不一定非得读此书,因为此书中的大量篇幅都在讲内存的底层原理