This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
The Concurrency Challenge
July-August 2008 (vol. 25 no. 4)
pp. 312-320
Wen-mei Hwu, University of Illinois at Urbana-Champaign
Kurt Keutzer, University of California, Berkeley
Commercial microprocessors are converging on multiprocessor architectures with multiple cores on a single die. Unless software adapts and utilizes these parallel systems, the fundamental value proposition behind the semiconductor and computer industries will falter. According to the authors of this article, successful programming environments for these processors must be application centric and protect application programmers from as many hardware idiosyncrasies as possible. In particular, they envision a methodology in which application developers write code by inserting specific modules, constraints, and error handlers into application frameworks to derive working code. Ideally, most of these programmers should not need to know that they are generating concurrent programs. Solutions should be derived according to engineering and architectural principles that can be replicated and applied across a wide range of applications. Robust strategies to help developers debug the functionality and performance of their code without seeing the complexity of concurrent execution will be critical to the success of this methodology.
Index Terms:
concurrency, parallel programming, application frameworks, programming models, programming tools, multicore, many-core, software engineering, autotuning
Citation:
Wen-mei Hwu, Kurt Keutzer, Timothy G. Mattson, "The Concurrency Challenge," IEEE Design & Test of Computers, vol. 25, no. 4, pp. 312-320, July-Aug. 2008, doi:10.1109/MDT.2008.110
Usage of this product signifies your acceptance of the Terms of Use.