gpt4 book ai didi

c - 在具有 ARM A9 处理器、L2 CACHE、SRAM 的系统上。是否有可能有一个C程序来获得以下性能数据

转载 作者:太空宇宙 更新时间:2023-11-04 03:52:42 24 4
gpt4 key购买 nike

在具有 ARM A9 处理器、L2CACHE、SRAM 的系统上。是否有可能有一个C程序来获取以下性能数据:

  1. 平均。 SRAM 数据获取延迟。
  2. 平均。指令获取延迟。

最佳答案

如果您有要运行和测量的硬件目标,您可以创建测试代码,使用 Cortex-A9 PMU(引用 A9 TRM 第 11 章)获取不同执行点之间的周期计数。您的测试代码需要初始化并从 PMU 寄存器中读取。然后,PMU 将测量周期计数并提供其他有趣的数据,例如缓存未命中数。使用软件可以做到这一点。

但是,生成的性能数据可能并不像您想要的那样低级。

考虑在一个 NOP 指令 block 上循环,循环计数器在一个寄存器中。 L1 指令缓存将在第一次迭代时填满。 PMU 可以为您提供指令周期和总时间的测量值。该测量将与 L1 指令获取延迟相关(除非您使用非常大 block ,在这种情况下您可能会阐明 L2)。

同样,您可以构建测试代码,其执行时间也将包括数据获取延迟的影响。

ARM example code这显示了如何使用 PMU。

您可能会发现 processor internals变得复杂。如果 L2 是您的主要兴趣, Controller 例如L2C-310可能有自己的事件计数器,虽然我没有使用过。

关于c - 在具有 ARM A9 处理器、L2 CACHE、SRAM 的系统上。是否有可能有一个C程序来获得以下性能数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19511199/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com