繁体   English   中英

Raspberry Pi 1 B与Raspberry Pi 2 B ASM的速度差异

[英]Raspberry Pi 1 B vs. Raspberry Pi 2 B ASM speed difference

我有以下代码:

for (short l = j; l < j + input->w_small; l = l + 4){
  add_b = k * input->w_big + l;
  add_s = (k - i) * input->w_small + l - j;

  __asm__ __volatile__(
      "ldr %%r1, [%1];"
      "ldr %%r2, [%2];"
      "usada8 %0, %%r1, %%r2, %0;"
      :"+r" (sad)
      : "r" (input->pic_big + add_b), "r" (input->pic_small + add_s)
      : "r1", "r2"
      );
}

这是图像处理算法的一部分。 该应用程序在RPi 1 B上运行29.24秒,在RPi 2 B上运行7.65秒,从而提高了3.82倍的速度。 问题是,为什么? 我知道,模型之间存在架构上的变化,但是我没有找到有关USADA8的任何参考,因为它在ARMv7上应该明显更快。 有任何想法吗?

PS:不要误会我的意思,我对结果非常满意,只是感到好奇:)

可能有很多原因,但是主要的原因可能是(根据 ):

  • 核心频率不同(2B型为900MHz,1B型为700MHz)
  • 2B的L1缓存是模型1B中L1缓存的两倍(16kB与32kB)。 我怀疑L2缓存与一般而言,缓存层次结构也有所不同。
  • 两者的配置可能不同(您可以调整各种事物的频率)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM