看板 AndroidDev 關於我們 聯絡資訊
大家好, 不好意思有個運算速度的問題想請問大家 假設有以下的運算式 float Num[40000][40]; float temp = 0; // Num矩陣的值都先assign完成 for(int i=0;i<40000;i++) { for(int j=0;j<40;j++) { temp += Num[i][j]*Num[i][j]; } } 上面黃色那行在矩陣很大的時候會花很多時間, 但因為程式需求 必須得要開這麼大 之前在筆電上(i5雙核2.3GHz)跑 可以瞬間跑出來 以為不是個問題 沒想到在手機上(一支1GHz另一支雙核1.2GHz)卡在這行卡好幾秒 不知道有沒有比較好的寫法 可以加快速度? 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.34.215.139
bukiya:透過java jni,讓矩陣在native code計算會比較快一些 05/19 13:31
bukiya:板本3.0以上,可以試試看用新的api renderscript,效果應該 05/19 13:33
bukiya:jni差不多 05/19 13:33
exoduschi:在進第二回圈前 可以先看是不是零 或是一 05/22 01:58
fjm31714:內層可以多放幾個計算式 j一次加2然後作[i][j] [i][j+1] 05/22 12:49
fjm31714:或是在多一些 不過可能要測試看看 05/22 12:50