Abstract
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.
Chapter PDF
Similar content being viewed by others
References
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)
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)
Fatahalian, K., et al.: Sequoia: programming the memory hierarchy. In: Supercomputing 2006, p. 83. ACM Press, New York (2006)
Hofstee, H.P.: Power efficient processor architecture and the Cell processor. In: HPCA 2005, pp. 258–262. IEEE Computer Society, Los Alamitos (2005)
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)
Valiant, L.: A bridging model for parallel computation. Commun. ACM 33(8), 103–111 (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Donaldson, A.F., Keir, P., Lokhmotov, A. (2009). Compile-Time and Run-Time Issues in an Auto-Parallelisation System for the Cell BE Processor. In: César, E., et al. Euro-Par 2008 Workshops - Parallel Processing. Euro-Par 2008. Lecture Notes in Computer Science, vol 5415. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-00955-6_21
Download citation
DOI: https://doi.org/10.1007/978-3-642-00955-6_21
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-00954-9
Online ISBN: 978-3-642-00955-6
eBook Packages: Computer ScienceComputer Science (R0)