Accession Number:

ADA399574

Title:

CILK: A Multi-Threaded Programming System for Meta-Computers

Descriptive Note:

Final rept. May 1997-Nov 2000

Corporate Author:

MASSACHUSETTS INST OF TECH CAMBRIDGE LAB FOR COMPUTER SCIENCE

Personal Author(s):

Report Date:

2001-12-01

Pagination or Media Count:

47.0

Abstract:

Contracts F30602-97-l-0150 and F306O2-97-l-0270 were a joint effort but funded using different contract vehicles at the request of DARPA, the sponsoring agency. This report documents the design and development of CILK, a language for multi-threaded parallel programming based on ANSI C. CILK is designed for genera-purpose parallel programming, but it is especially effective for exploiting dynamic, highly asynchronous parallelism, which can be difficult to write in data-parallel or message-passing style. Three world-class chess programs were written in CILK by the CILK group at MIT. CILK provides an effective platform for programming dense and sparse numerical algorithms, such as matrix factorization and N-body simulations. Unlike many other multithreaded programming systems, CILK is algorithmic, in that the runtime system employs a scheduler that allows the performance of programs to be estimated accurately based on abstract complexity measures. CILK is available for download at httpsupertech. lcs . mit. educilk

Subject Categories:

  • Computer Programming and Software
  • Computer Hardware

Distribution Statement:

APPROVED FOR PUBLIC RELEASE