Session types: towards safe and fast reconfigurable programming

  • Authors:
  • Nicholas Ng;Nobuko Yoshida;Xin Yu Niu;Kuen Hung Tsoi

  • Affiliations:
  • Imperial College London, UK;Imperial College London, UK;Imperial College London, UK;Imperial College London, UK

  • Venue:
  • ACM SIGARCH Computer Architecture News - ACM SIGARCH Computer Architecture News/HEART '12
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper introduces a new programming framework based on the theory of session types for safe, reconfigurable parallel designs. We apply the session type theory to C and Java programming languages and demonstrate that the sessionbased languages can offer a clear and tractable framework to describe communications between parallel components and guarantee communication-safety and deadlock-freedom by compile-time type checking. Many representative communication topologies such as a ring or scatter-gather can be programmed and verified in session-based programming languages. Case studies involving N-body simulation and Kmeans clustering are used to illustrate the session-based programming style and to demonstrate that the session-based languages perform competitively against MPI counterparts in an FPGA-based heterogeneous cluster, as well as the potential of integrating them with FPGA acceleration.