科技报告详细信息
Treating a User-Defined Parallel Library as a Domain-Specific Language.
Quinlan, D. J. ; Miller, B. ; Schordan, M. ; Philip, B.
Technical Information Center Oak Ridge Tennessee
关键词: Programming languages;    Parallel processing(Computers);    Abstraction;    Compilers;    ROSE library;   
RP-ID  :  DE200515013476
学科分类:工程和技术(综合)
美国|英语
来源: National Technical Reports Library
PDF
【 摘 要 】

We have developed specific libraries to simplify the development of serial and parallel scientific applications. The A++/P++ library provide an essential array abstraction for C++ scientific applications. The effect is to provide a single array abstraction that permits the development of serial code (using A++). The serial application code using the array abstractions need only be recompiled (using P++) to run on parallel distributed memory machines. The resulting abstractions are simple and powerful since it simplifies serial application code and even completely hides parallel details. But since it operates as a library the compiler is oblvious to its semantics and likewise the library is oblivious to the context of the use of its abstractons within the users application code. It is discouraging that the development of efficient code from high-level abstractions is blocked by compilers that are unable to use very specific high-level semantics essentially because it is user-defined. In this paper we show how high-level serial and parallel libraries have been used to simplify the development of scientific applications and how with the specific semantics of such high-level abstractions we can develop preprocessors that dont extend the C++ language but instead permit the user-defined semantics of the high-level abstractions to be leverages together with the context of the high-level abstractions within the users application to optimize the performance of the final application code.

【 预 览 】
附件列表
Files Size Format View
DE200515013476.pdf 811KB PDF download
  文献评价指标  
  下载次数:15次 浏览次数:27次