Compile-Time and Run-Time Issues in an Auto-Parallelisation System for the Cell BE Processor

  • Alastair F. Donaldson
  • Paul Keir
  • Anton Lokhmotov
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5415)


We describe compiler and run-time optimisations for effective auto-parallelisation of C++ programs on the Cell BE architecture. Auto-parallelisation is made easier by annotating sieve scopes, which abstract the “read in, compute in parallel, write out” processing paradigm. We show that the semantics of sieve scopes enables data movement optimisations, such as re-organising global memory reads to minimise DMA transfers and streaming reads from uniformly accessed arrays. We also describe run-time optimisations for committing side-effects to main memory. We provide experimental results showing the benefits of our optimisations, and compare the Sieve-Cell system with IBM’s OpenMP implementation for Cell.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bellens, P., Perez, J., Badia, R., Labarta, J.: CellSs: a programming model for the Cell BE architecture. In: Supercomputing 2006, p. 86. ACM Press, New York (2006)Google Scholar
  2. 2.
    Donaldson, A.F., Riley, C., Lokhmotov, A., Cook, A.: Auto-parallelisation of sieve C++ programs. In: Bougé, L., Forsell, M., Träff, J.L., Streit, A., Ziegler, W., Alexander, M., Childs, S. (eds.) Euro-Par Workshops 2007. LNCS, vol. 4854, pp. 18–27. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  3. 3.
    Fatahalian, K., et al.: Sequoia: programming the memory hierarchy. In: Supercomputing 2006, p. 83. ACM Press, New York (2006)Google Scholar
  4. 4.
    Hofstee, H.P.: Power efficient processor architecture and the Cell processor. In: HPCA 2005, pp. 258–262. IEEE Computer Society, Los Alamitos (2005)Google Scholar
  5. 5.
    Lokhmotov, A., Mycroft, A., Richards, A.: Delayed side-effects ease multi-core programming. In: Kermarrec, A.-M., Bougé, L., Priol, T. (eds.) Euro-Par 2007. LNCS, vol. 4641, pp. 641–650. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    Valiant, L.: A bridging model for parallel computation. Commun. ACM 33(8), 103–111 (1990)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Alastair F. Donaldson
    • 1
  • Paul Keir
    • 2
  • Anton Lokhmotov
    • 3
  1. 1.Codeplay SoftwareEdinburghUK
  2. 2.Department of Computing ScienceUniversity of GlasgowGlasgowUK
  3. 3.Department of ComputingImperial College LondonLondonUK

Personalised recommendations