Program
Monday, July 4
- 09:00 - 10:00 Registration
- 09:45 - 10:00 Welcome and Introduction
- 10:00 - 11:00 Keynote: Christophe Dubach - A Quest for the Elementary Primitives of Parallel Patterns
- 11:00 - 11:30 Coffee break
- 11:30 - 13:00 Session 1 (3 papers)
- Marco Danelutto, Daniele De Sensi, and Massimo Torquati. A Power-Aware, Self-Adaptive Macro Data Flow Framework
- Dalvan Griebler, Marco Danelutto, Massimo Torquati, and Luiz Fernandes. SPar: a DSL for High-Level and Productive Stream Parallelism
- Vladimir Janjic, Christopher Brown, Adam Barwell, Kevin Hammond, Jan Stypka, Wojciech Turek, Aleksander Byrski, and Marek Kisiel-Dorohinicki. The Missing Link! A new Skeleton for Evolutionary Multi-Agent Systems in Erlang
- 13:00 - 14:00 Lunch
- 14:00 - 15:30 Session 2 (3 papers)
- August Ernstsson, Lu Li, and Christoph Kessler. SkePU 2: Flexible and type-safe skeleton programming for heterogeneous parallel systems
- Michael Haidl and Sergei Gorlatch. High-Level Programming for Many-Cores with C++ and STL
- Ari Rasch and Sergei Gorlatch. Multi-Dimensional Homomorphisms and Their Implementation in OpenCL
- 15:30 - 16:00 Coffee break
- 16:00 - 17:00 Session 3 (2 papers)
- Fabian Wrede and Steffen Ernsting. Simultaneous CPU-GPU Execution of Data Parallel Algorithmic Skeletons
- Antonio Brogi, Marco Danelutto, Daniele De Sensi, Ahmad Ibrahim, Jacopo Soldani, and Massimo Torquati. Analysing multiple QoS attributes in Parallel Design Patterns-based Applications
- 17:00 - 18:00 Free time
- 18:00 - 19:00 City Walking Tour
- 19:00 - 21:00 Conference Dinner
Tuesday, July 5
- 10:00 - 11:30 Session 4 (3 papers)
- Thibaut Tachon, Gaetan Hains, Frederic Loulergue, and Chong Li. Automated generation of BSP automata
- Jan-Willem Buurlage, Tom Bannink, and Abe Wits. Bulk-synchronous pseudo-streaming algorithms for many-core accelerators
- Wijnand Suijlen. Mock BSPlib for Testing and Debugging Bulk Synchronous Parallel Software
- 11:30 - 12:00 Coffee break
- 12:00 - 13:00 Session 5 (2 papers)
- Claudia Misale, Maurizio Drocco, Marco Aldinucci, and Guy Tremblay. A Comparison of Big Data Frameworks on a Layered DataFlow Model
- Ana Moreton-Fernandez, Arturo Gonzalez-Escribano, and Diego R. Llanos. Four abstract array distribution operators
- 13:00 - 14:00 Lunch
- 14:00 - 15:30 Session 6 (3 papers)
- Venkatesh Kannan and Geoff Hamilton. Functional Program Transformation for Parallelisation using Skeletons
- Mehdi Goli and Horacio Gonzalez-Velez. Formalised Composition and Interaction for Heterogeneous Structured Parallelism
- Georgios Chasparis and Michael Rossbory. Efficient Dynamic Pinning of Parallelized Applications by Distributed Reinforcement Learning
- 15:30 - 16:00 Closing, announcing HLPP’17, Coffee break
Keynote
The conference keynote will be held by Christophe Dubach.
Title: A Quest for the Elementary Primitives of Parallel Patterns
Abstract: Algorithmic patterns have emerged as a solution to exploit parallel hardware and achieve performance portability. Applications can easily be expressed at a high-level, hiding hardware complexity away from programmers and shifting the responsibility to the library writer or compiler. However, producing efficient implementations remains a complicated task that needs to be repeated for each high-level pattern and whenever hardware changes.
In this talk, I will present Lift, a novel high-level data-parallel programming model. The language is based on a surprisingly small set of functional "elementary" primitives which can be combined to define higher-level algorithmic patterns. A system of rewrite-rules is used to derive device-specific optimised low-level implementations of the algorithmic patterns. The rules encode both algorithmic choices and low-level optimisations in a unified system and let the compiler explore the optimisation space automatically. Preliminary results show this approach produces GPU code that matches the performance of highly tuned implementations of several computational kernels including linear algebra operations.
Short Bio: Christophe Dubach received his Ph.D in Informatics from the University of Edinburgh in 2009 and holds a M.Sc. degree in Computer Science from EPFL (Switzerland). He is a Lecturer (Assistant Professor) in the Institute for Computing Systems Architecture at the University of Edinburgh (UK). In 2010 he spent one year as a visiting researcher at the IBM Watson Research Center (USA) working on the LiquidMetal project. His current research interests includes high-level programming models for heterogeneous systems, co-design of both computer architecture and optimising compiler technology, adaptive microprocessor, and the application of machine learning in these areas.