簡體   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