WikiSort.ru - Программирование

ПОИСК ПО САЙТУ | о проекте
Cilk
Класс языка императивный (процедурный), структурная, parallel programming
Появился в 1994
Автор Лаборатория CS в MIT
Разработчик Intel
Система типов статическая
Основные реализации: Cilk/Cilk++
Диалекты Intel Cilk Plus
Испытал влияние C
Лицензия открытый исходный код для оригинального Cilk
проприетарная для Cilk++ и Intel Cilk Plus
Сайт cilk.com

Cilk — язык параллельного программирования.

Разрабатывался с 1994 года в лаборатории Информатики MIT. Основан на языке ANSI C, с добавлением небольшого количества ключевых слов Cilk. Позже был расширен на Си++, в виде Cilk++ — коммерческого продукта, разрабатываемого компанией Cilk Arts.

В 2009 году компанией Cilk Arts было объявлено о том, что все её продукты и сама команда разработчиков становятся частью корпорации Интел.

Дизайн

Основной идеей при разработке ЯП Cilk было то, что программист должен взять на себя задачу «выявления» параллелизма, помечая те части программы, которые могут быть безопасно исполнены в параллельном режиме; при этом на систему исполнения возлагается задача непосредственного планирования выполнения и распределения нагрузки. Благодаря такому разделению программы на Cilk работают на системах с различным количеством процессоров, в том числе и на одном. Если программист выделил достаточное количество параллельных блоков, достигается неплохая масштабируемость.

При разработке языка за основу был взят ЯП Си. Расширения (ключевые слова cilk) при этом слабо меняют программу, так, если их удалить из исходного кода (например, через пустые макроопределения), то получится корректная программа на Си, называемая serial elision или C elision от полной Cilk-программы. Несмотря на некоторые сходства, Cilk не является родственным проекту Concurrent C от AT&T Bell Labs.

Компанией Cilk Arts, Inc. была разработана коммерческая версия Cilk, названная Cilk++, которая поддерживает как Си, так и Си++; совместима с компиляторами GCC и Microsoft C++.

В августе 2011 года исходные коды Cilk Plus были открыты компанией Intel. [1] Был предоставлены патч для gcc-4.7 и Run-Time Library (RTL).

В GCC 8.1 поддержка Cilk++ расширений для C и C++ удалена.

Ключевые слова

  • cilk
  • spawn
  • sync
  • inlet
  • abort

Примечания

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии