Cilk

Поделись знанием:
Перейти к: навигация, поиск
Cilk
Класс языка:

императивный (процедурный), структурная, parallel programming

Появился в:

1994

Автор:

Лаборатория CS в MIT

Система типов:

статическая

Основные реализации:

Cilk/Cilk++

Диалекты:

Intel Cilk Plus

Испытал влияние:

C

Лицензия:

открытый исходный код для оригинального Cilk
проприетарная для Cilk++ и Intel Cilk Plus

Сайт:

[www.cilk.com k.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).

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

  • cilk
  • spawn
  • sync
  • inlet
  • abort

Напишите отзыв о статье "Cilk"

Примечания

  1. [software.intel.com/en-us/articles/intel-cilk-plus-open-source/ Intel Cilk Plus Open Source - Intel® Software Network]

Отрывок, характеризующий Cilk

– Ах, наши! А там?.. – Пьер показал на другой далекий курган с большим деревом, подле деревни, видневшейся в ущелье, у которой тоже дымились костры и чернелось что то.
– Это опять он, – сказал офицер. (Это был Шевардинский редут.) – Вчера было наше, а теперь его.
– Так как же наша позиция?
– Позиция? – сказал офицер с улыбкой удовольствия. – Я это могу рассказать вам ясно, потому что я почти все укрепления наши строил. Вот, видите ли, центр наш в Бородине, вот тут. – Он указал на деревню с белой церковью, бывшей впереди. – Тут переправа через Колочу. Вот тут, видите, где еще в низочке ряды скошенного сена лежат, вот тут и мост. Это наш центр. Правый фланг наш вот где (он указал круто направо, далеко в ущелье), там Москва река, и там мы три редута построили очень сильные. Левый фланг… – и тут офицер остановился. – Видите ли, это трудно вам объяснить… Вчера левый фланг наш был вот там, в Шевардине, вон, видите, где дуб; а теперь мы отнесли назад левое крыло, теперь вон, вон – видите деревню и дым? – это Семеновское, да вот здесь, – он указал на курган Раевского. – Только вряд ли будет тут сраженье. Что он перевел сюда войска, это обман; он, верно, обойдет справа от Москвы. Ну, да где бы ни было, многих завтра не досчитаемся! – сказал офицер.
Старый унтер офицер, подошедший к офицеру во время его рассказа, молча ожидал конца речи своего начальника; но в этом месте он, очевидно, недовольный словами офицера, перебил его.
– За турами ехать надо, – сказал он строго.
Офицер как будто смутился, как будто он понял, что можно думать о том, сколь многих не досчитаются завтра, но не следует говорить об этом.
– Ну да, посылай третью роту опять, – поспешно сказал офицер.
– А вы кто же, не из докторов?
– Нет, я так, – отвечал Пьер. И Пьер пошел под гору опять мимо ополченцев.
– Ах, проклятые! – проговорил следовавший за ним офицер, зажимая нос и пробегая мимо работающих.
– Вон они!.. Несут, идут… Вон они… сейчас войдут… – послышались вдруг голоса, и офицеры, солдаты и ополченцы побежали вперед по дороге.
Из под горы от Бородина поднималось церковное шествие. Впереди всех по пыльной дороге стройно шла пехота с снятыми киверами и ружьями, опущенными книзу. Позади пехоты слышалось церковное пение.
Обгоняя Пьера, без шапок бежали навстречу идущим солдаты и ополченцы.