JCilk Project


SuperTech Home  |  About SuperTech  |  Group Members  |  Cilk  |  Papers  |  Opportunities For Students  |  Contact Us  |  News  |  Group Calendar


.: This is the Home Page for JCilk -- Java based Cilk :.

About This Project

We are currently developing JCilk, a Java-based multithreaded programming language. JCilk extends the Java language to provide call-return semantics for multithreading, much as Cilk does for C. Java's built-in thread model does not support the passing of exceptions or return values from one thread back to the "parent" thread that created it. JCilk imports Cilk's fork-join primitives spawn and sync into Java to provide procedure-call semantics for concurrent subcomputations. JCilk integrates exception handling with multithreading by defining semantics consistent with the existing semantics of Java's try and catch constructs, but which handle concurrency in spawned methods.

JCilk is unique in that it supports an exception-handling mechanism that handles concurrency in spawned methods, using semantics that are consistent with the existing semantics of Java's try and catch constructs. Most parallel languages do not provide an exception-handling mechanism. The parallel languages that do provide exception support are built upon serial languages, whose support for exceptions is only semantically defined for serial execution. These parallel languages do not extend the exception-handling semantics to a concurrent context. JCilk is one of the few parallel languages that address the issue of integrating exception handling with multithreading and the first to define a concrete set of semantics consistent with the existing serial semantics of Java's exception mechanism.

We have developed a working version of the JCilk system, including both the compiler and the runtime system. This is a prototype implementation built in order to test the semantics that we designed for JCilk. Click here to download our prototype implementation.

People to Contact

I-Ting Angelina Lee (Ph.D. Student)

Papers

The JCilk-1 Runtime System
by John S. Danaher
Master's Thesis, Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science
June, 2005
To download the paper: ps format  pdf format 
BibTeX

The JCilk Multithreaded Language
by I-Ting Angelina Lee
Master's Thesis, Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science
August, 2005
To download the paper: ps format  pdf format 
BibTeX

The JCilk Language for Multithreaded Computing
by John S. Danaher, I-Ting Angelina Lee, and Charles E. Leiserson
Synchronization and Concurrency in Object-Oriented Languages (SCOOL)
San Diego, California
October, 2005
To download the paper: ps format  pdf format 
BibTeX

Programming with Exceptions in JCilk
by John S. Danaher, I-Ting Angelina Lee, and Charles E. Leiserson
Science of Computer Programming (SCP), 147–171, December, 2006
To download the paper: ps format  pdf format 
BibTeX


 

(c) Copyright 2004 Massachusetts Institute of Technology
Last updated: 19:53:33 Tue May 24, 2011
by neboat

Valid XHTML 1.0!