О примере Intel по добыче газа

В примере с раздельным майнингом Intel:

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

Почему бы не объединить Transform и Lighting в один цикл? Это решило бы проблему вытеснения кеша.

Кто-то задал тот же вопрос в комментариях, но ответа нет.

Если расщепление цикла происходит как-то быстрее … Почему? При каких условиях мы должны разбивать петли?

Я просмотрел несколько сообщений о расщеплении петель, но до сих пор не понимаю.

1

Решение

Если только одна из этих операций может быть векторизована, то их объединение может предотвратить векторизацию цикла. В этом случае разделение массива на полосы размером с кэш будет лучше. Я не знаю, относится ли это к Transform а также Lighting, Если нет, то, возможно, они не обязательно являются хорошим примером для демонстрации.

Когда цикл частично векторизуем (это слово?), А частично нет, деление * — это обычно путь.

* расщепление — это название техники, использованной в статье в соответствии с википедия

1

Другие решения


По вопросам рекламы ammmcru@yandex.ru
Adblock
detector