Cilk | |
---|---|
Jazyková třída | imperativ (procedurální), strukturální , paralelní |
Objevil se v | 1994 |
Autor | CS Lab na MIT |
Vývojář | Intel |
Typový systém | statický |
Hlavní implementace | Cilk/Cilk++ |
Dialekty | Intel Cilk Plus |
Byl ovlivněn | C |
ovlivnil | openmp |
Licence |
open source pro originální Cilk proprietární pro Cilk++ a Intel Cilk Plus |
webová stránka | www.cilkplus.org |
Cilk je paralelní programovací jazyk .
Vyvíjen od roku 1994 v Informatické laboratoři MIT . Založeno na jazyku ANSI C , s několika přidanými klíčovými slovy Cilk. Později byl rozšířen na C++ jako Cilk++, komerční produkt vyvinutý společností Cilk Arts.
V roce 2009 Cilk Arts oznámila, že všechny její produkty a samotný vývojový tým se stávají součástí Intel Corporation .
Hlavní myšlenkou při vývoji programovacího jazyka Cilk bylo, že programátor by se měl ujmout úkolu „odhalit“ paralelismus, označit ty části programu, které lze bezpečně paralelně provádět; v tomto případě je úkol přímého plánování realizace a rozložení zátěže přiřazen prováděcímu systému. Díky tomuto rozdělení programy Cilk fungují na systémech s různým počtem procesorů, včetně jednoho. Pokud programátor alokoval dostatečný počet paralelních bloků, je dosaženo dobré škálovatelnosti.
Jazyk byl vyvinut s použitím C jako základu. Rozšíření (klíčová slova cilk) mění program jen nepatrně, takže pokud jsou odstraněny ze zdrojového kódu (například pomocí prázdných definic maker ), získá se správný program v jazyce C, nazývaný serial elision nebo C elision z kompletního programu Cilk. Přes určité podobnosti Cilk nesouvisí s projektem Concurrent C společnosti AT&T Bell Labs .
Společnost Cilk Arts, Inc. byla vyvinuta komerční verze Cilk, nazvaná Cilk++, která podporuje C i C++; kompatibilní s kompilátory GCC a Microsoft C++.
V srpnu 2011 byl Cilk Plus open source od společnosti Intel. [1] Byla poskytnuta oprava pro gcc-4.7 a Run-Time Library (RTL).
V GCC 8.1 byla odstraněna podpora rozšíření Cilk++ pro C a C++.