The task parallelism group at Argonne National Laboratory investigates applications, language constructs, compilation, and runtime system issues associated with the use of task parallelism, and mixed task/data parallelism. Much of this work is performed in the context of Fortran, but many of the techniques apply equally to other languages.
More info