0
在渲染腳本中,我使用綁定指針遍歷大圖像。 問題在於數組訪問性能。Renderscript c風格指針使用性能問題
...
for(int i=0; i < channels; i++) {
sum += (input[i*input_size]) * mulValue;
}
...
例如,當input_size是12288它需要1.5秒來完成腳本,但是當input_size是12280花費〜0.5秒。
什麼會導致這樣的神祕行爲?
檢查您是否無法訪問它。此外,更喜歡rsGetElementAt_ *函數來綁定指針。 – sakridge
@sakridge陣列太大,但我沒有訪問它超出範圍。這可能是緩存的結果嗎? – Vardan95
可能。也許這個大小會導致你的算法超過一個緩存級別。另一件事是更小的尺寸更加一致,這可能會導致更多的銀行衝突,但3倍的差異似乎過大。你可以嘗試一堆不同的尺寸? – sakridge