Примеры работы с компиляторами

  • 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.9510.317.957.876.416.426.37

    Разработчики PGI рекомендуют в качестве универсальной оптимизации использовать -fastsse -Mipa=fast. Как видно из таблицы, время выполнения программы при использования оптимизации сократилось почти в 2 раза.

    Для более подробной информации об опциях оптимизации можно набрать pgcc -help НУЖНАЯ_ОПЦИЯ_ОПТИМИЗАЦИИ либо обратиться к документации.