


作者:[美]费多尔·G.皮克斯 著 刘鹏 译
定价:139元
印次:1-3
ISBN:9787302620693
出版日期:2022.11.01
印刷日期:2024.08.26
图书责编:贾小红
图书分类:零售
《C++高性能编程》详细阐述了与C++高性能编程相关的基本解决方案,主要包括性能和并发性简介,性能测量, CPU架构、资源和性能,内存架构和性能,线程、内存和并发,并发和性能,并发数据结构,C++中的并发,高性能C++,C++中的编译器优化,未定义行为和性能,性能设计等内容。此外,本书还提供了相应的示例、代码,以帮助读者进一步理解相关方案的实现过程。 本书适合作为高等院校计算机及相关专业的教材和教学参考书,也可作为相关开发人员的自学用书和参考手册。
前 言 高性能编程艺术再次受到重视。多年以前,程序员必须对每一比特数据的情况都了如指掌(这里说的“一比特”有时就是它字面上的意思,因为一比特的数据就有可能控制前面板上的开关)。现在,计算机有足够的能力来处理日常任务。当然,总有一些领域永远没有足够的计算能力。但是,大多数程序员都可以避免编写低效的代码。这并不是一件坏事,因为程序员可以不受性能限制,专注于以其他方式改进代码。 本书首先解释为什么越来越多的程序员不得不再次关注性能和效率。这为整本书定下基调,因为它定义了我们将在后续章节中使用的方法:关于性能的知识最终必须来自测量,并且每个与性能相关的意见都必须有数据支持。 高性能编程有5个组成部分,它们也是共同决定程序性能的5个元素。 第1个元素是计算硬件,它也是我们需要深入探索的底层基础。本书从单个组件(处理器和内存)到多处理器计算系统进行了比较全面的讨论,详细阐释了内存模型、数据共享的成本,甚至无锁编程等。 第2个元素是高效使用编程语言。正是基于这一点,本书更加特定于C++(其他语言有不同的低效率特征)。 第3个元素是编译器。本书讨论了与编译器相关的提高程序性能的技巧。 第4个元素是设计。也可以说,它其实应该是排在第一位的元素:如果设计没有将性能作为其明确目标之一,那么在后期添加良好的性能几乎是不可能的。当然,本书将性能设计安排在最后,因为这是一个高级概念,它需要以我们之前讨论的所有知识为基础。 高性能编程的第5个元素就是程序员,程序员的知识和技能将决定最终结果。 为了帮助读者顺利学习,本书包含许多示例,可用于读者的实战探索和自学。高性能编程是一项艺术,对...
第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 数... 查看详情

