问题与练习

  1. 使用本章讨论的技术解决以下实验任务:
  2. perf-ninja::function_inlining_1
  3. perf-ninja::vectorization 1 和 2
  4. perf-ninja::dep_chains 1 和 2
  5. perf-ninja::compiler_intrinsics 1 和 2
  6. perf-ninja::loop_interchange 1 和 2
  7. perf-ninja::loop_tiling_1
  8. 描述你将采取哪些步骤来找出应用程序是否利用了所有使用 SIMD 代码的机会。
  9. 在真实代码上手动练习循环优化。确保所有测试仍然通过。
  10. 假设你正在处理一个 IpCall(每次调用指令数)指标非常低的应用程序。你会尝试应用/强制哪些优化?
  11. 运行你日常使用的应用程序。找到最热的循环。它是否被向量化?是否可以强制编译器进行自动向量化?该循环是否因依赖链或执行吞吐量而成为瓶颈?

results matching ""

    No results matching ""