Trebuchet: exploring TLP with dataflow virtualisation

  • Authors:
  • Tiago A. O. Alves;Leandro A. J. Marzulo;Felipe M. G. Franca;Vitor Santos Costa

  • Affiliations:
  • Programa de Engenharia de Sistemas e Computacao, COPPE, Universidade Federal do Rio de Janeiro, Cidade Universitaria, Centro de Tecnologia, Bloco H, Sala 319, Rio de Janeiro, RJ, 21941-972, Br ...;Programa de Engenharia de Sistemas e Computacao, COPPE, Universidade Federal do Rio de Janeiro, Cidade Universitaria, Centro de Tecnologia, Bloco H, Sala 319, Rio de Janeiro, RJ, 21941-972, Br ...;Programa de Engenharia de Sistemas e Computacao, COPPE, Universidade Federal do Rio de Janeiro, Cidade Universitaria, Centro de Tecnologia, Bloco H, Sala 319, Rio de Janeiro, RJ, 21941-972, Br ...;CRACS and INESC-Porto LA, Faculdade de Ciencias, Universidade do Porto, Rua do Campo Alegre, 1021, 4169-007 Porto, Portugal

  • Venue:
  • International Journal of High Performance Systems Architecture
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Parallel programming has become mandatory to fully exploit the potential of multi-core CPUs. The dataflow model provides a natural way to exploit parallelism. However, specifying dependences and control using fine-grained instructions in dataflow programs can be complex and present unwanted overheads. To address this issue, we have designed TALM: a coarse-grained dataflow execution model to be used on top of widespread architectures. We implemented TALM as the Trebuchet virtual machine for multi-cores. The programmer identifies code blocks that can run in parallel and connects them to form a dataflow graph, which allows one to have the benefits of parallel dataflow execution in a Von Neumann machine, with small programming effort. We parallelised a set of seven applications using our approach and compared with OpenMP implementations. Results show that Trebuchet can be competitive with state-of-the-art technology, while providing the benefits of dataflow execution.