- PVSM.RU - https://www.pvsm.ru -

Вышли компиляторы GCC 4.9.0 с множеством новых «фишек»

Вышли компиляторы GCC 4.9.0 с множеством новых «фишек»Якуб Елинек (Jakub Jelinek) от имени всех разработчиков свободных компиляторов GNU Compiler Collection из Фонда свободного ПО официально объявил [1] о выпуске новой версии GCC 4.9.0.

«Один год и один месяц прошли с момента выпуска последней мажорной версии GNU Compiler Collection, — пишет Елинек, — так что пришло время объявить о новом основном релизе. GCC 4.9.0 несёт в себе важные новые функции, недоступные в GCC 4.8.x или предыдущих версиях GCC».

Среди самого главного [2] можно отметить поддержку OpenMP 4.0, последней версии спецификаций программирования для многоядерных процессоров. Кстати говоря, в LLVM/Clang вообще отсутствует поддержка хоть какой-нибудь версии OpenMP.

Значительно улучшено качество оптимизации при сборке (link-time optimization, LTO), а также внедрены некоторые другие алгоритмы оптимизации, в том числе межпроцедурная оптимизация и оптимизация с обратной связью (feedback-directed optimization). К примеру, благодаря LTO использование памяти при компиляции Firefox уменьшилось с 15 ГБ до 3,5 ГБ, а время выполнения этой процедуры — с 1700 до 350 секунд.

Средства диагностики GCC 4.9.0 теперь работают в цвете [3], подцвечивая маркеры ошибок, предупреждения и т.д.

Улучшена поддержка языка программирования C в стандарте ISO C11, а также сделана значительная работа по предварительной поддержке C++1y (C++14), реализована поддержка Google Go 1.2.1.

Во многом продвинулась поддержка ARM-процессоров, в том числе сделан новый местный распределитель регистров памяти для AArch64, оптимизация для Cortex-A53 и Cortex-A57 и архитектуры big.LITTLE, а также другие улучшения.

GCC 4.9.0 благодаря патчу от Intel поддерживает расширения Advanced Vector Extensions 512 (AVX-512), которые появятся в процессорах Intel на ранее, чем в конце 2015 года. Если говорить о подддержке оборудования Intel, то GCC 4.9.0 уже умеет генерировать бинарники, оптимизированные для будущих процессоров Atom Silvermont и процессоров Broadwell, которые Intel выпустит уже в этом году. Процессоры AMD тоже не забыты: новая версия компилятора оптимизирует код для процессоров Bulldozer 4 / Excavator APU/CPU, хотя они выйдут только через год.

Добавлена поддержка процессоров IBM Power8.

Полный список изменений в GCC 4.9.0 см. в changelog’е [4]. На сайте Phoronix можно найти бенчмарки [5], сравнивающие производительность GCC 4.9.0 по сравнению с предыдущими версиями и LLVM/Clang.

Автор: alizar

Источник [6]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/open-source/59258

Ссылки в тексте:

[1] объявил: http://gcc.gnu.org/ml/gcc/2014-04/msg00195.html

[2] самого главного: http://www.phoronix.com/scan.php?page=news_item&px=MTY3MDE

[3] работают в цвете: http://gcc.gnu.org/onlinedocs/gcc/Language-Independent-Options.html#index-fdiagnostics-color-239

[4] changelog’е: http://gcc.gnu.org/gcc-4.9/changes.html

[5] бенчмарки: http://www.phoronix.com/scan.php?page=article&item=gcc_49_optimizations&num=1

[6] Источник: http://habrahabr.ru/post/220459/