第一章. 略
2.1. SKYLATE微架构
2.1.1. 前端
2.1.2. 乱序执行引擎
2.1.3. 缓存与内存子系统
2.2. Haswell微架构
2.2.1. 前端
2.2.2. 乱序引擎
2.2.3. 执行引擎
2.2.4. 缓存与内存子系统
2.2.4.1. 读写操作的增强
2.2.5. Haswell-E微架构
2.2.6. Broadwell微架构
2.3.1. Intel(R) Sandy Bridge流水线概览
2.3.2. 前端
2.3.2.1. 遗留解码流水线
2.3.2.2. 已解码ICache
2.3.2.3. 分支预测
2.3.2.4. 微操作队列与循环流检测器
2.3.3. 乱序引擎
2.3.3.1. 重命名器
2.3.3.2. 调度器
2.3.4. 执行核
2.3.5. 缓存层次结构
2.3.5.1. 读与写操作的概览
2.3.5.2. L1 DCache
2.3.5.3. 环互联与最后一级缓存
2.3.5.4. 数据预取
2.3.6.系统代理
2.3.7. Intel(r)微架构Ivy Bridge
2.4. Intel(r) CORETM微架构增强的Intel(r) CORETM微架构
2.4.1. Intel(r) CORETM流水线
2.4.2.前端
2.4.2.1. 分支预测单元
2.4.2.2. 指令获取单元
2.4.2.3. 指令队列(IQ)
2.4.2.4. 指令解码
2.4.2.5. 栈指针追踪器
2.4.2.6. 微融合
2.4.3. 执行核
2.4.3.1. 发布端口与执行单元
2.4.4. Intel (r) Advanced Memory Access
2.4.4.1. 读与写
2.4.4.2. 预取数据到L1缓存
2.4.4.3. 数据预取逻辑
2.4.4.4. 写转发
2.4.4.5. 内存歧义消除
2.4.5. Intel(r) Advanced Smart Cache
2.4.5.1. 读
2.4.4.2. 写
2.5. Intel(r)微架构Nehalem
2.5.1. 微架构流水线
2.5.2. 前端概览
2.5.3. 执行引擎
2.5.3.1. 发布端口与执行单元
2.5.4. 缓冲与内存子系统
2.5.5. 读写操作的增强
2.5.5.1. 对齐风险的高效处理
2.5.5.2. 写转发增强
2.5.6. REP字符串增强
2.5.7. 系统软件的增强
2.5.8. 功耗的效率提升
2.5.9. Intel微架构Nehalem中的超线程技术支持
2.6.Intel(r)超线程技术
2.6.1. 处理器资源与HT技术
2.6.1.1. 被复制的资源
2.6.1.2. 分区的资源
2.6.1.3. 共享的资源
2.6.2. 微架构流水线与HT技术
2.6.3. 前端流水线
2.6.4. 执行核
2.6.5. 回收
2.7. Intel(r) 64架构
2.8. SIMD技术
2.9. SIMD技术以及应用程序级扩展的总结
3.1. 性能工具
3.1.1. Intel® C++与Fortran编译器
3.1.2. 一般编译器建议
3.1.3. VTuneTM性能分析器
3.2. CPU全景
3.2.1. CPUID发布策略与兼容代码策略
3.2.2. 透明缓存参数策略
3.2.3. 线程化策略与硬件多线程支持
3.3. 编程规则,建议及调整提示
3.4. 优化前端
3.4.1. 分支预测优化
3.4.1.1. 消除分支
3.4.1.2. 自旋等待与循环
3.4.1.3. 静态预测
3.4.1.4. 内联,调用与返回
3.4.1.5. 代码对齐
3.4.1.6. 分支类型选择
3.4.1.7. 循环展开
3.4.1.8. 分支预测的编译器支持
3.4.2. 取指与解码优化
3.4.2.1. 对微融合的优化
3.4.2.2. 对宏融合的优化
3.4.2.3. 长度改变前缀
3.4.2.4. 优化循环流检测器(LSD)
3.4.2.5. 在Intel® Sandy Bridge中利用LSD微操作发布带宽
3.4.2.6. 为已解码ICache优化
3.4.2.7. 其他解码指引
3.5. 优化执行核
3.5.1. 指令选择
3.5.5.1. INC与DEC指令的使用
3.5.5.2. 整数除法
3.5.5.3. 使用LEA
3.5.5.4. Intel®微架构Sandy Bridge中的ADC与SUB
3.5.5.5. 位旋转(Bitwise Rotation)
3.5.5.6. 可变比特计数旋转与移位
3.5.5.7. 地址计算
3.5.5.8. 寄存器清除与依赖性破坏习语
3.5.5.9. 比较
3.5.5.10. 使用NOP
3.5.5.11. 混合SIMD数据类型
3.5.5.12. 溅出调度
3.5.5.13. 零时延MOV指令