Компания Intel объявила об открытии исходных текстов проекта "Cilk Plus".


Рубрика: Новости Linux
Метки: | |
Просмотров: 2277

Компания Интел объявила об открытии исходных текстов проекта "Cilk Plus" 4. В рамках проекта реализован набор расширений для языков Си и Си++ с реализации новой действенной методики параллельного программирования, дающий возможность значительно упростить разработку программ, части которых выполняются попутно с задействованием различных процессорных ядер.

Одновременно, на базе кода Cilk Plus и набора компиляторов GCC 4.7 создана ветка cilkplus, которая может использоваться разработчиками GCC для упрощения интеграции Cilk Plus в состав основной ветки GCC. Компания Интел высказалась, что разыскивает пути сотрудничества с разработчиками открытого ПО, как в плане развития исходных текстов, так и в направлении усовершенствования спецификаций Cilk Plus, которые распространяются согласно с принципами открытых технологий.

В представленном коде реализованы 3 простых ключевых слова и специализированная нотация для работы с массивами, которые позволяют с высокой скоростью задействовать в приложениях на Си и Си++ возможности современных ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР, имеющих несколько процессорных ядер и векторные сопроцессоры (Vector Units). Для управления генерацией кода с улучшенной векторизацией предусмотрена pragma simd.

Поддерживается 2 способа увеличения производительности - параллелизм данных и параллельное исполнение подпрограмм. В первом случае, обеспечиваются механизмы прозрачного распараллеливания типовых операций над массивами данных и автоматическое задействование SIMD-инструкций. Для организации параллелизма на уровне подпрограмм в обиход вводится 3 ключевых слова: _Cilk_spawn - запуск функции в параллельном режиме, _Cilk_sync - ожидание завершения попутно выполняемой функции, и _Cilk_for - организация работы цикла в параллельном режиме.

При проведение тестирования на 16-ядерном ЦЕНТРАЛЬНЫЙ ПРОЦЕССОР реализация способа Монте-Карло при использовании Cilk Plus продемонстрировала прирост производительности вдвое, в случае задействования режима параллельной обработки данных, и в 11.6 раз при использовании режима исполнения параллельных задач.

Отдельно распространяется специализированная runtime-библиотека Интел Cilk Plus, код которой открыт под лицензией BSD. Runtime-библиотека протестирована в Линукс (теоретически нет никаких ограничений по применению в иных ОС) на системах с архитектурами x86_32 и x86_64. Представители Интел полагаются, что с помощью сообщества удастся портировать runtime-компоненты и для иных архитектур. Так как в библиотеке совсем не немало специфичного для архитектур x86_32 и x86_64 кода, такое портирование не будет составлять усилий.


  • Комментариев: 0

  • Вконтакте

  • Facebook:

    Оставьте комментарий!

    grin LOL cheese smile wink smirk rolleyes confused surprised big surprise tongue laugh tongue rolleye tongue wink raspberry blank stare long face ohh grrr gulp oh oh downer red face sick shut eye hmmm mad angry zipper kiss shock cool smile cool smirk cool grin cool hmm cool mad cool cheese vampire snake excaim question

    Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

    Имя и сайт используются только при регистрации

    Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

    Авторизация 

    MaxSiteAuth.

    (обязательно)