如何解决valgrind 的 cachegrind 仍然是 2021 年的首选工具吗?
我长期使用 cachegrind 进行程序分析,最近又回去查看官方文档:https://valgrind.org/docs/manual/cg-manual.html
其中多次引用了 cpu 模型、实现决策和仿真模型,这些模型都是 2000 年代中期的,并且还声明了“现代”处理器上的某些行为发生了变化:
LL 缓存通常复制 L1 缓存的所有条目 [...] 这是 Pentium 芯片的标准配置,但 AMD Opterons、Athlons 和 Durons 使用独占的 LL 缓存 [...]
Cachegrind 模拟了 2004 年左右主流桌面/服务器处理器的典型分支预测器。
最近的处理器具有更好的分支预测器 [...] Cachegrind 的预测器设计是故意保守的,以便代表在更复杂的间接分支预测器广泛部署之前的大型处理器安装基础。特别是后期模型 Pentium 4s (Prescott)、Pentium M、Core 和 Core 2 比 Cachegrind 模型具有更复杂的间接分支预测器。
现在我想知道
- 在最新一代 cpu 上进行开发时,这些选择中有多少仍然适用于 2021 年,
- cachegrind 的实现是否已更新以反映最新的 cpu,但手册已过时,
- cachegrind 在现代 cpu 上是否由于其对旧行为的模拟而显示偏斜的结果。
非常感谢任何见解!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。