DocumentCode
3239237
Title
Compiling C for the EARTH multithreaded architecture
Author
Hendren, Laurie J. ; Tang, Xinan ; Zhu, Yingchun ; Gao, Guang R. ; Xue, Xun ; Cai, Haiying ; Ouellet, Pierre
Author_Institution
Sch. of Comput. Sci., McGill Univ., Montreal, Que., Canada
fYear
1996
fDate
35339
Firstpage
12
Lastpage
23
Abstract
Multithreaded architectures provide an opportunity for efficiently executing programs with irregular parallelism and/or irregular locality. This paper presents a strategy that makes use of the multithreaded execution model without exposing multithreading to the programmer. Our approach is to design simple extensions to C, and to provide compiler support that automatically translates high-level C programs into lower-level threaded programs. In this paper we introduce EARTH-C, our extended C language which contains simple constructs for specifying control parallelism and data locality. Based on EARTH-C, we describe compiler techniques that are used for translating to lower-level Threaded-C programs for the EARTH multithreaded architecture. We demonstrate our approach with six benchmark programs. We show that even naive EARTH-C programs can lead to reasonable performance, and that more advanced EARTH-C programs can give performance very close to hand-coded threaded-C programs
Keywords
C language; parallel architectures; program compilers; EARTH multithreaded architecture; benchmark programs; compiler; compiler support; high-level C programs; irregular locality; irregular parallelism; multithreaded execution model; Communication system control; Computer architecture; Delay; Earth; High level languages; Multithreading; Parallel processing; Program processors; Programming profession; Yarn;
fLanguage
English
Publisher
ieee
Conference_Titel
Parallel Architectures and Compilation Techniques, 1996., Proceedings of the 1996 Conference on
Conference_Location
Boston, MA
ISSN
1089-795X
Print_ISBN
0-8186-7633-7
Type
conf
DOI
10.1109/PACT.1996.552551
Filename
552551
Link To Document