«Открытые системы»

Прошла вторая встреча рабочей группы федерации Gelato по компилятору GCC для процессора Itanium

Федерация Gelato ставит перед собой задачу поддержки исследований в области высокопроизводительных вычислений на платформе Itanium. Находящиеся в зоне ее внимания проекты направлены на повышение производительности и масштабируемости вычислительных систем и кластеров, создание программного обеспечения, исследования в области параллельных файловых систем, кластерных технологий и grid-вычислений, а также на разработку стандартов Linux для продвижения высокопроизводительных вычислительных платформ. Деятельность Gelato поддерживается компаниями Hewlett-Packard, Intel, SGI, а также сообществом Itanium Solutions Alliance. Среди ее участников — представители полусотни крупнейших мировых научно-исследовательских центров, в том числе европейский центр ядерных исследований CERN, Институт компьютерных технологий Академии наук Китая, Институт системного программирования и Институт программных систем РАН, Ливерморская национальная лаборатория, NASA, Национальный центр США по исследованию атмосферы, Сингапурский центр grid-технологий, Университет Беркли, французский национальный институт компьютерных исследований INRIA и др.

В 2005 году при поддержке HP и Intel федерация Gelato инициировала международный проект, направленный на создание оптимизирующих компиляторов GCC (GNU Compiler Collection) для платформы Itanium. Компиляторы этого семейства для языков Cи/C++, Java, Фортран, Ада и др., распространяемые по лицензиям GNU, применяются в большинстве Unix-систем и на других платформах. Особая архитектурная схема решений GCC (сначала строится абстрактное дерево, которое затем преобразуется в объектный код для соответствующего процессора) позволяет достичь высокой степени мобильности при переносе результатов проекта на новые платформы. Текущая официальная версия компилятора 4.1.1 (представлена в мае 2006 года) поддерживает около 30 операционных систем.

По образному замечанию управляющего директора федерации Марка Смита, процессор Itanium можно уподобить гоночной машине, в которую едва ли кто рискнет залить топливо на первой попавшейся заправочной: изделие класса «люкс» требует особого обслуживания и оснастки. Чтобы в полной мере раскрыть потенциал процессора, нужны специальные версии оптимизирующих компиляторов. По оценке Gelato, 70% приверженцев Itanium в коммерческих компаниях и научных организациях предпочитают пользоваться компиляторами GCC, и это обусловливает необходимость координации усилий разработчиков ведущих научных центров и ИТ-компаний с целью обеспечить зрелость платформы Itanium: только в этом случае ее примут крупные организации.

За ядро компилятора отвечает группа из 30 разработчиков. Около 70 специалистов обеспечивают поддержку языков программирования и вычислительных платформ, и порядка 200 программистов работают по конкретным направлениям.

Смит высоко оценил вклад в проект отечественных разработчиков, совершенствующих компилятор GCC по контракту с HP. Мерой успеха сотрудничества российских ученых с разработчиками GCC и специалистами HP, Intel и Red Hat могут служить результаты, полученные в ИСП РАН. В прошлом году была реализована поддержка спекулятивных загрузок из памяти, позволяющая полнее использовать особенности архитектуры Itanium: рост производительности составил на различных тестах от 2 до 11%.

Участники семинара с интересом выслушали сообщения ведущих разработчиков проекта: Диего Новилло из Red Hat (обзор проекта GCC, устранение неоднозначностей в памяти), представителя Intel Марка Дэвиса (архитектура Itanium), Шин Мин Лю из HP (параметры производительности и их измерение), Зденека Дворака (SUSE, предварительная выборка данных), Владимира Макарова (Red Hat, планировщик команд), Андрея Белеванцева (ИСП РАН, уточнение плана работ) и других. Отдельные сессии были посвящены обсуждению текущих результатов работ по усовершенствованию компиляторов GCC и Intel. По результатам семинара уточнена программа работы по развитию компилятора GCC на 2006-2007 годы. 

Поделитесь материалом с коллегами и друзьями