我一直在尋找解決方案至少2天沒有成功,所以作爲我最後的希望,我決定在這裏問它。Android NDK vs iOS - 性能問題
在這裏,我們有一個使用OpenCV的C++代碼庫,我們想要在iOS和Android上運行。事實證明,整個事情在Android上運行速度較慢,我找不到原因。分析後,我們知道調用C++代碼的方法是兩個平臺上完全相同的問題。在Android(三星Galaxy S4)上,需要140-150毫秒才能在iOS(iPhone 5)上執行,而在70毫秒以下。 我讀過一些關於優化本機代碼和使用不同local_cflags的文章,但似乎沒有幫助。
這是需要承認的事實還是有解決方案? 預先感謝您,麥克
這是兩個不同的CPU。性能差異並不大,而高端品牌則更快。我看起來並不奇怪。請注意,Android手機會更慢;一些中國淘汰品可能會慢10倍。 – MSalters 2014-09-03 10:18:39
確實如此,但Galaxy S4在規格上擁有更好的CPU。看起來沒關係。 – arrafutott 2014-09-03 10:30:28
確保你使用armeabi-v7a版本,不僅是一個普通的armeabi版本。普通的armeabi版本不使用FPU,因此如果代碼使用大量的浮動,性能方面的表現會非常有限。 (對於整數運算,差異不應該太大。) – mstorsjo 2014-09-03 10:59:25