Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15350399
  • 博文数量: 2005
  • 博客积分: 11986
  • 博客等级: 上将
  • 技术积分: 22535
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-17 13:56
文章分类

全部博文(2005)

文章存档

2014年(2)

2013年(2)

2012年(16)

2011年(66)

2010年(368)

2009年(743)

2008年(491)

2007年(317)

分类:

2009-08-11 08:58:45

最近用AT91SAM9261EK這塊開發板執行影像處理的程式,發現所耗費的時間實在是有點沒辦法接受,僅僅對512x512的圖片執行



測邊,就花了將近25秒,更不用說人臉辨識了= =
gcc
cross-compiler在compile program的時候,對於浮點數運算會預設使用硬體浮點運算FPA(Float Point
Architecture),而沒有FPA的CPU,會使用FPE(Float Point
Emulation),而使用FPE速度上會受到極大的限制,所以就由EABI(Embedded Application Binary
Interface),來做處理。
ARM EABI有許多的革新方式,但是改變最大的應該就是Float Point
Performance,它使用Vector Float Point(其實我不太懂,只知道這樣比FPE快很多),而Linux
Kernel從2.6.16版開始支援了EABI(Kernel Feature),ARM EABI Cross-compiler可以在

下載,速度上也真的增快許多,同樣的程式可以在一秒內跑完,相關performance比較請參考文章
Why ARM's EABI matters

雖然速度上已經提高許多,但執行人臉辨識程式,還是需要花費3秒以上,解決辦法,應該是要換更快的CPU(AT91SAM9261只有200Mhz)或是換有FPA的CPU,而最省錢卻最費力的方法,就是將程式改成Fixed Point.
阅读(1804) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~