The Chapel Parallel Programming Language

Chapel Research Collaborations

Chapel collaborations are cooperative efforts with other research groups who are developing complementary technologies or exploring directions that we hope will result in improvements to future Chapel releases. We encourage and support Chapel-related collaborations with academia, industry, and computing centers. A list of possible collaboration topics are given at the bottom of this webpage. If you would like to discuss the possibility of collaborating, please contact us at the email address in the sidebar.

Current Collaborations:

Enabling Technologies:

Possibilities for Collaboration:

  • Memory Management: garbage collection, region-based memory management, multiresolution memory management, memory consistency models, ...
  • Task Management: task throttling, work stealing, task teams, language concepts for managing scheduling policies, ...
  • Parallel I/O: parallel file I/O, scientific file formats, parallel disks, extend domain maps to support file I/O, ...
  • Resiliency: exceptions, checkpointing, resilient domain maps, ...
  • Interoperability: mechanisms, semantics, access to distributed data structures in situ, ...
  • Application Studies: adaptive mesh refinement, finite element methods, "big data" computations, other killer apps, ...
  • Performance Studies and Optimizations: where are we currently lacking and how could we do better?
  • Index and Subdomain Types: role of index and subdomain types in optimizations and Chapel semantics, ...
  • Targeting Different Platforms: MS CLR/Mono, Windows, accelerators, FPGAs (?), ...
  • Runtime Compilation: impact of JIT compilation on Chapel, ...
  • Autotuning: explore the use of autotuning to optimize parameters in user-defined distributions or more general Chapel code, ...
  • Tools: debuggers, performance analysis, IDEs, interpreters, valgrind-style correctness checkers, visualizations, ...
  • Libraries: interface to standard libraries, port standard libraries, language improvements to aid library creation, ...
  • Data-intensive Computation: out-of-core computation, database-style operations, ...
  • Domain-specific Languages: build DSLs on top of Chapel, language support for building them within Chapel, ...
  • or pitch your own idea...
  • Past Collaborations