Abstract
This final chapter summarizes the experiences of the first decade of multi-core programming and looks at the challenges the research and practitioner community will face in the next decade. We discuss how we can tackle the issue of scaling the performance of single threaded applications, how we can deal with the bottlenecks that emerge as the level of parallelism increases and what higher abstraction level of software design will mean for deployment on many-core hardware; in general, how the hardware and software environment may look like in a few years’ time. Finally we discuss how related fields of computing technology—such as exascale computing, cloud computing and pervasive mobile computing—may influence (and be influenced in the process) by advancements in programming many-core processors.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Ericsson (2010) CEO to shareholders: 50 billion connections 2020. http://www.ericsson.com/ thecompany/press/releases/2010/04/1403231. Accessed 11 January 2010
Hung P, Flynn M J (1999) Optimum Instruction-level Parallelism (ILP) for Superscalar and VLIW Processors. Technical report, Stanford University
Steffan J G, Mowry T C (1998) The Potential for Using Thread Level Data Speculation to Facilitate Automatic Parallelization. Proceedings of the 4th International Symposium on High- Performance Computer Architecture: 2–13
Liu S, Gaudiot J-L (2008) The Potential of Fine-Grained Value Prediction in Enhancing the Performance of Modern Parallel Machines. 13th Asia-Pacific Computer Systems Architecture Conference: 1-8
Bridges M, Vachharajani N, Zhang Y, Jablin T, August D (2007) Revisiting the Sequential Programming Model for Multi-Core. Proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture: 69-84
Prabhu P, Ramalingam G, Vaswani K (2010) Safe Programmable Speculative Parallelism. Proceedings of the 2010 ACM SIGPLAN Conference on Programming Language Design and Implementation: 50-61
Vajda A, Stenström P (2010) Semantic Information based Speculative Parallel Execution. Proceedings 3rd Workshop on Parallel Execution of Sequential Programs on Multi-Core Architectures
Axelsson E, Claessen K, Devai G et al (2010) Feldspar: A Domain Specific Language for Digital Signal Processing algorithms. Proceedings of the 8th ACM/IEEE International Conference on Formal Methods and Models for Codesign
Chafi H, Sujeeth A K, Brown K J, Lee H J, Atreya A R, Olukotun K (2011) A Domain-Specific Approach to Heterogeneous Parallelism. Proceedings of the 16th Annual Symposium on Principles and Practice of Parallel Programming
Chafi H, DeVito Z, Moors A, Rompf T, Sujeeth A K, Hanrahan P, Odersky M, Olukotun K (2010) Language Virtualization for Heterogeneous Parallel Computing. Onward! ’10: Proceedings of the ACM International Conference on Object Oriented Programming Systems Languages and Applications
Odersky M, Spoon L, Venners B (2008) Programming in Scala: A Comprehensive Step-by-Step Guide. Artima Inc
Cadar C, Pietzuch P, Wolf A L (2010) Multiplicity Computing: A Vision of Software Engineering for Next-Generation Computing Platform Applications. FSE/SDP Workshop on the Future of Software Engineering Research: 81-86
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2011 Springer Science+Business Media, LLC
About this chapter
Cite this chapter
Vajda, A. (2011). Looking Ahead. In: Programming Many-Core Chips. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-9739-5_10
Download citation
DOI: https://doi.org/10.1007/978-1-4419-9739-5_10
Published:
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4419-9738-8
Online ISBN: 978-1-4419-9739-5
eBook Packages: EngineeringEngineering (R0)