This paper describes a compiler extension to our prototype extensible c translator that adds new features for parallel execution of matrix operations and shows their application to problems in spatio-temporal data min...
详细信息
ISBN:
(纸本)9781479956180
This paper describes a compiler extension to our prototype extensible c translator that adds new features for parallel execution of matrix operations and shows their application to problems in spatio-temporal data mining. The extension provides new language features for constructing new matrices, mapping functions over elements of a matrix, and accumulating operations that, for example, can sum values in a matrix. It also provides the appropriate semantic analysis to check for errors before translating the constructs down to parallel c code. The extension also provides features that let the programmer indicate how the extension translates these matrix constructs down to ccode. Programmers seeking higher levels of performance can specify how the underlying for-loops are structured so that code using, for example, loop-tiling techniques or vector processors, is generated. In general, compiler extensions supported by our approach allow new domain-specific syntax and semantic analyses to be easily added to the host language. Specifications of the host c language and the extensions are composed to create a custom translator that maps extended c programs down to plain (parallel) ccode, checking for domain-specific errors and applying high-level domain-specific optimizations in the process.
暂无评论