Анализ доступа к массиву - Array access analysis

В Информатика, анализ доступа к массиву это анализ компилятора подход, используемый для определения шаблонов доступа для чтения и записи к элементам или частям массивов.[1]

Основным типом данных, которым манипулируют в научных программах, является массив. Анализ определения / использования всего массива недостаточен для агрессивного оптимизация компилятора Такие как автоматическое распараллеливание и приватизация массива. Анализ доступа к массиву направлен на получение информации о том, к каким частям или даже к каким элементам массива обращается данный сегмент кода (базовый блок, петля, или даже на процедура уровень).

Анализ доступа к массивам можно в значительной степени разделить на точные (или основанные на списках ссылок) и сводные методы для различных компромиссов точности и сложности. Точные методы точны, но очень дороги с точки зрения вычислений и места для хранения, тогда как сводные методы являются приблизительными, но могут быть вычислены быстро и экономично.

Типичный точный анализ доступа к массиву включает линеаризацию и изображения атома. Сводные методы можно разделить на разделы массива, ограниченные регулярные сечения, используя триплетная запись, методы линейного ограничения, такие как дескрипторы доступа к данным и анализ области массива.

Рекомендации

  1. ^ Пэк, Юнхын; Хефлингер, Джей; Падуя, Дэвид (январь 2002 г.). «Эффективный и точный анализ доступа к массиву». Транзакции ACM по языкам и системам программирования. 24 (1): 65–109. Дои:10.1145/509705.509708.