2014-10-17 66 views
1

在英特爾的條帶開採例如:關於英特爾的條帶開採例如

https://software.intel.com/en-us/articles/strip-mining-to-optimize-memory-use-on-32-bit-intel-architecture

爲什麼不合並轉換和照明進入一個循環?它會解決緩存驅逐問題。

有人在評論中提出了同樣的問題,但沒有答案。

如果分裂循環以某種方式更快...爲什麼?我們應該在什麼條件下分開循環?

我查看了幾篇關於分裂循環的文章,但我仍然不明白。

回答

1

如果這些操作中只有一個可以被矢量化,那麼將它們組合可以防止循環的矢量化。在這種情況下,將陣列分成緩存大小的條紋會更好。我不知道這是否適用於TransformLighting。如果不是,那麼他們可能不一定是示範的好例子。

當循環是部分可矢量化的(是一個單詞?),部分不是,裂變*通常是要走的路。

*分裂實際上是根據wikipedia

+0

啊文章中使用該技術...謝謝例如名稱。 – user2873372 2014-10-17 09:31:59