DocumentCode
2075131
Title
Engineering parallel applications with tunable architectures
Author
Schaefer, Christoph A. ; Pankratius, Victor ; Tichy, Walter F.
Author_Institution
IPD, Karlsruhe Inst. of Technol., Karlsruhe, Germany
Volume
1
fYear
2010
fDate
2-8 May 2010
Firstpage
405
Lastpage
414
Abstract
Current multicore computers differ in many hardware characteristics. Software developers thus hand-tune their parallel programs for a specific platform to achieve the best performance; this is tedious and leads to non-portable code. Although the software architecture also requires adaptation to achieve best performance, it is rarely modified because of the additional implementation effort. The Tunable Architectures approach proposed in this paper automates the architecture adaptation of parallel programs and uses an auto-tuner to find the best-performing software architecture for a particular machine. We introduce a new architecture description language based on parallel patterns and a framework to express architecture variants in a generic way. Several case studies demonstrate significant performance improvements due to architecture tuning and show the applicability of our approach to industrial applications. Software developers are exposed to less parallel programming complexity, thus making the approach attractive for experts as well as inexperienced parallel programmers.
Keywords
multiprocessing systems; parallel programming; software architecture; architecture description language; architecture tuning; multicore computers; parallel programs; software architecture; software developers; tunable architectures; Computer architecture; Connectors; Indexing; Parallel processing; Pipelines; Software; Tuning;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering, 2010 ACM/IEEE 32nd International Conference on
Conference_Location
Cape Town
ISSN
0270-5257
Print_ISBN
978-1-60558-719-6
Type
conf
DOI
10.1145/1806799.1806859
Filename
6062108
Link To Document