Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Компания Intel представила ветку GCC с реализацией технологии Cilk Plus

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

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

В представленном коде реализованы три простых ключевых слова и специальная нотация для работы с массивами, которые позволяют быстро задействовать в приложениях на Си и Си++ возможности современных CPU, имеющих несколько процессорных ядер и векторные сопроцессоры (Vector Units). Для управления генерацией кода с улучшенной векторизацией предусмотрена pragma simd.

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

При проведение тестирования на 16-ядерном CPU реализация метода Монте-Карло при использовании Cilk Plus показала прирост производительности в два раза, в случае задействования режима параллельной обработки данных, и в 11.6 раз при использовании режима выполнения параллельных задач.

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

OpenNET

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

VPS в России, Европе и США

Бесплатная поддержка и администрирование

Оплата российскими и международными картами

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...