首页 | 本学科首页   官方微博 | 高级检索  
     


Compiling C for the EARTH multithreaded architecture
Authors:Laurie J Hendren  Xinan Tang  Yingchun Zhu  Shereen Ghobrial  Guang R Gao  Xun Xue  Haiying Cai  Pierre Ouellet
Affiliation:(1) School of Computer Science, McGill University, H3A 2A7 Montreal, Quebec, Canada
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 present EARTH-C our extended C language which contains simple constructs for specifying control parallelism, data locality, shared variables and atomic operations. 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 threated-C programs. This work supported, in part, by NSERC and FCAR.
Keywords:Parallel languages  multithreaded architecture  compiling for parallel architectures
本文献已被 SpringerLink 等数据库收录!
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号