Parallel IT · Pyjama
Pyjama — About
Pyjama is an active research project supporting OpenMP-like directives for Java. It follows the OpenMP philosophy and its shared-memory fork-join model, and adds GUI-awareness for developing interactive applications.
Programming in Pyjama combines directive-based incremental parallelism with high-level object-oriented programming. When working in Java, Pyjama directives add expressive parallelism and concurrency without major restructuring or reimplementation.
Salient features:
- Conventional OpenMP-like directives for parallelism in Java.
- GUI-aware directives for application development.
- Incremental concurrency through the GUI-aware directives.
- Support for the Android platform.
- New concepts and directives for OpenMP asynchronous event-driven programming.
Download
The Pyjama compiler and runtime are available here.
Getting started
Download the compiler and take a look at the Quick Start guide.
Publications
- Vikas, N. Giacaman, O. Sinnen (2013). Pyjama: OpenMP-like implementation for Java, with GUI extensions. PMAM 2013 (with PPoPP 2013), Shenzhen, China.
- X. Fan, M. Mehrabi, O. Sinnen, N. Giacaman (2015). Exception Handling with OpenMP in Object-Oriented Languages. IWOMP 2015, Aachen, Germany.
- X. Fan, O. Sinnen, N. Giacaman (2016). Towards an Event-Driven Programming Model for OpenMP. P2S2 (with ICPP 2016), Philadelphia, USA.
- X. Fan, R. Feng, O. Sinnen, N. Giacaman (2016). Evaluating OpenMP Implementations for Java Using PolyBench. IWOMP 2016, Nara, Japan.
- X. Fan, O. Sinnen, N. Giacaman (2017). Asynchronous OpenMP Tasking with Easy Thread Context Switching and Pool Control. IWOMP 2017, New York, USA.