Abstract
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.
Original language | English (US) |
---|---|
Pages (from-to) | 312-320 |
Number of pages | 9 |
Journal | IEEE Design and Test of Computers |
Volume | 25 |
Issue number | 4 |
DOIs | |
State | Published - Aug 21 2008 |
Fingerprint
Keywords
- Application frameworks
- Autotuning
- Complexity theory
- Computational modeling
- Concurrency
- Concurrent computing
- Hardware
- Magnetic cores
- Many-core
- Multicore
- Parallel programming
- Programming
- Programming models
- Programming tools
- Software
- Software engineering
ASJC Scopus subject areas
- Software
- Hardware and Architecture
- Electrical and Electronic Engineering
Cite this
The concurrency challenge. / Hwu, Wen-Mei W; Keutzer, Kurt; Mattson, Timothy G.
In: IEEE Design and Test of Computers, Vol. 25, No. 4, 21.08.2008, p. 312-320.Research output: Contribution to journal › Article
}
TY - JOUR
T1 - The concurrency challenge
AU - Hwu, Wen-Mei W
AU - Keutzer, Kurt
AU - Mattson, Timothy G.
PY - 2008/8/21
Y1 - 2008/8/21
N2 - 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.
AB - 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.
KW - Application frameworks
KW - Autotuning
KW - Complexity theory
KW - Computational modeling
KW - Concurrency
KW - Concurrent computing
KW - Hardware
KW - Magnetic cores
KW - Many-core
KW - Multicore
KW - Parallel programming
KW - Programming
KW - Programming models
KW - Programming tools
KW - Software
KW - Software engineering
UR - http://www.scopus.com/inward/record.url?scp=49549087268&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=49549087268&partnerID=8YFLogxK
U2 - 10.1109/MDT.2008.110
DO - 10.1109/MDT.2008.110
M3 - Article
AN - SCOPUS:49549087268
VL - 25
SP - 312
EP - 320
JO - IEEE Design and Test
JF - IEEE Design and Test
SN - 2168-2356
IS - 4
ER -