Компилятор PGI
Примеры работы с компиляторами
- Portland Group Inc. Compilers 7.2-3 (C,C++,Fortran77/90,95) Команды: pgcc, pgCC, pgf77, pgf90, pgf95
- Информация для пользователей Суперкомпьютерного комплекса МГУ
- Применение опций оптимизации
Рассмотрим решение уравнения Пуассона:
Используемые опции компилятора
- -O0 - без оптимизации
- -O1 - оптимизация для максимальной скорости, но без включения оптимизаций, которые увеличивают размер кода и при этом дают небольшой выигрыш по скорости
- -О2 - оптимизация для максимальной скорости (используется по умолчанию)
- -О3 - То же что и -O2, но включена более агрессивная оптимизация (в основном более агрессивная оптимизация для циклов), которая может не улучшать производительность для некоторых программ
- -fast - включает в себя -O2 и ряд других опций, таких как использование векторизации с поддержкой SSE инструкций.
- -fastsse - то же самое что и -fast
- -Mipa=fast - влючение межпроцедурного анализа
- -fast -O3 - тот же самый -fast, только вместо -O2 используется -O3.
flags -O0 -O1 -O2 -O3 -fast -fastsse -Mipa=fast -fastsse -Mipa=fast -O3 Решение уравнения Пуассона (сек.) 12.95 10.31 7.95 7.87 6.41 6.42 6.37 Разработчики PGI рекомендуют в качестве универсальной оптимизации использовать -fastsse -Mipa=fast. Как видно из таблицы, время выполнения программы при использования оптимизации сократилось почти в 2 раза.
Для более подробной информации об опциях оптимизации можно набрать pgcc -help НУЖНАЯ_ОПЦИЯ_ОПТИМИЗАЦИИ либо обратиться к документации.