Cilk | |
---|---|
Sprog klasse | imperativ (proceduremæssig), strukturel , parallel |
Dukkede op i | 1994 |
Forfatter | CS Lab på MIT |
Udvikler | Intel |
Type system | statisk |
Større implementeringer | Cilk/Cilk++ |
Dialekter | Intel Cilk Plus |
Blev påvirket | C |
påvirket | openmp |
Licens |
open source til original Cilk, der er proprietær for Cilk++ og Intel Cilk Plus |
Internet side | www.cilkplus.org |
Cilk er et parallelt programmeringssprog .
Udviklet siden 1994 på MIT Informatics Lab . Baseret på ANSI C -sproget med nogle få Cilk-nøgleord tilføjet. Det blev senere udvidet til C++ som Cilk++, et kommercielt produkt udviklet af Cilk Arts.
I 2009 annoncerede Cilk Arts, at alle dets produkter og selve udviklingsteamet blev en del af Intel Corporation .
Hovedtanken i udviklingen af programmeringssproget Cilk var, at programmøren skulle påtage sig opgaven med at "afsløre" parallelitet, ved at markere de dele af programmet, som sikkert kan udføres parallelt; i dette tilfælde er opgaven med direkte udførelsesplanlægning og belastningsfordeling tildelt udførelsessystemet. Takket være denne opdeling fungerer Cilk-programmer på systemer med et andet antal processorer, inklusive en. Hvis programmøren har tildelt et tilstrækkeligt antal parallelle blokke, opnås god skalerbarhed.
Sproget blev udviklet med C som grundlag. Udvidelser (cilk nøgleord) ændrer kun lidt på programmet, så hvis de fjernes fra kildekoden (for eksempel gennem tomme makrodefinitioner ), så opnås et korrekt C-program, kaldet seriel elision eller C elision fra et komplet Cilk-program. På trods af nogle ligheder er Cilk ikke relateret til AT&T Bell Labs' Concurrent C -projekt.
Cilk Arts, Inc. der blev udviklet en kommerciel version af Cilk, kaldet Cilk++, som understøtter både C og C++; kompatibel med GCC og Microsoft C++ compilere.
I august 2011 blev Cilk Plus åbnet af Intel. [1] Der er leveret en patch til gcc-4.7 og Run-Time Library (RTL).
I GCC 8.1 er understøttelse af Cilk++-udvidelser til C og C++ blevet fjernet.