Cilk is an algorithmic multithreaded language. Cilk enables programmers to concentrate on structuring programs to expose parallelism and exploit locality. The responsibility of scheduling the computation to run efficiently is left to Cilk's runtime system, which takes care of details such as load balancing and communication. Unlike other multithreaded languages, Cilk is algorithmic in that its runtime system guarantees efficient and predictable performance.
Intel Cilk Plus integrates the ideas of Cilk into the C++ programming language.
OpenMP (Open specifications for Multi Processing) is an API for explicit multi-threaded, shared memory parallelism. OpenMP consists of compiler directives, runtime library routines, and environment variables.