PySke

The Python Skeleton Library

What is PySke?

Algorithmic skeletons are patterns of parallel computations. Skeletal parallel programming eases parallel programming: a program is merely a composition of such patterns. Data-parallel skeletons operate on parallel data-structures that have often sequential counterparts. In algorithmic skeleton approaches that offer a global view of programs, a parallel program has therefore a structure similar to a sequential program but operates on parallel data-structures. PySke is such an algorithmic skeleton library for Python to program shared or distributed memory parallel architectures in a simple way.

PySke Code

  1. In the Python Package Index
  2. The PySke repository

Current Team

Publications

Conferences with Proceedings

  1. Jolan Philippe and Frédéric Loulergue. PySke: Algorithmic skeletons for Python. In International Conference on High Performance Computing and Simulation (HPCS). IEEE, 2019
  2. Frédéric Loulergue and Jolan Philippe. Automatic Optimization of Python Skeletal Parallel Programs. In Algorithms and Architectures for Parallel Processing (ICA3PP), LNCS, Melbourne, Australia, 2019. Springer
  3. Frédéric Loulergue and Jolan Philippe. New List Skeletons for the Python Skeleton Library. In Parallel and Distributed Computing, Applications and Technologies (PDCAT). IEEE, 2019

Thesis / Dissertation

  1. Jolan Philippe. Systematic Development of Efficient Programs on Parallel Data Structures, Master’s Thesis, Northern Arizona University, ProQuest Dissertations Publishing, 2019

Poster Presentation with Proceedings

  1. Jolan Philippe and Frédéric Loulergue. Towards automatically optimizing PySke programs (poster). In International Conference on High Performance Computing and Simulation (HPCS). IEEE, 2019

Talks

  1. Jolan Philippe. PySke: Algorithmic Skeletons for Python, Journée LaMHA + LTP, Créteil, France, October 18, 2019