Producer-Consumer: the programming model for future many-core processors

  • Authors:
  • Arnau Prat-Pérez;David Dominguez-Sal;Josep-Lluis Larriba-Pey;Pedro Trancoso

  • Affiliations:
  • DAMA-UPC, Universitat Politècnica de Catalunya, Barcelona, Spain;DAMA-UPC, Universitat Politècnica de Catalunya, Barcelona, Spain,Sparsity Technologies, Barcelona, Spain;DAMA-UPC, Universitat Politècnica de Catalunya, Barcelona, Spain;Department of Computer Science, University of Cyprus, Nicosia, Cyprus

  • Venue:
  • ARCS'13 Proceedings of the 26th international conference on Architecture of Computing Systems
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

The massive addition of cores on a chip is adding more pressure to the accesses to main memory. In order to avoid this bottleneck, we propose the use of a simple producer-consumer model, which allows for the temporary results to be transferred directly from one task to another. These data transfer operations are performed within the chip, using on-chip memory, thus avoiding costly off-chip memory accesses. We implement this model on a real many-core processor, the 48-core Intel Single-chip Cloud Computer processor using its on-chip memory facilities. We find that the Producer-Consumer model adapts to such architectures and allow to achieve good task and data parallelism. For the evaluation of the proposed platform we implement a graph-based application using the Producer- Consumer model. Our tests show that the model scales very well as it takes advantage of the on-chip memory. The execution times of our implementation are up to 9 times faster than the baseline implementation, which relies on storing the temporary results to main memory.