Orthogonal parallel processing in vector Pascal

被引:5
作者
Cockshott, P
Michaelson, G
机构
[1] Univ Glasgow, Imaging Faraday Partnership, Dept Comp Sci, Glasgow G12 8QQ, Lanark, Scotland
[2] Heriot Watt Univ, Sch Math & Comp Sci, Edinburgh EH14 4AS, Midlothian, Scotland
关键词
Pascal; parallelism; SIMD; image processing; vector processing; data parallel;
D O I
10.1016/j.cl.2004.07.001
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Despite the widespread adoption of parallel operations in contemporary CPU designs, their use has been restricted by a lack of appropriate programming language abstractions and development environments. To fully exploit the SIMD model of computation such operations offer, programmers depend on CPU specific machine code or implementation-dependent libraries. Here we present vector Pascal (VP), a language designed to enable the elegant and efficient expression of SIMD algorithms. VP imports into Pascal abstraction mechanisms derived from functional languages, in turn having their origins in APL. In particular, it extends all operators to work on vectors of data. The type system is also extended to handle pixels and dimensional analysis. Code generation is via the ILCG system that allows retargeting to multiple different SIMD instruction sets based on formalised descriptions of the instruction set semantics. (c) 2004 Elsevier Ltd. All rights reserved.
引用
收藏
页码:2 / 41
页数:40
相关论文
共 40 条
[1]   CODE GENERATION USING TREE MATCHING AND DYNAMIC-PROGRAMMING [J].
AHO, AV ;
GANAPATHI, M ;
TJIANG, SWK .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1989, 11 (04) :491-516
[2]  
Blelloch Guy E., 1995, CMUCS95170
[3]  
BURKE C, 1995, J USER MANUAL
[4]  
Cattell R. G. G., 1980, ACM Transactions on Programming Languages and Systems, V2, P173, DOI 10.1145/357094.357097
[5]  
CHAITIN G, 1997, LIMITS MATH, P29
[6]  
CHEONG G, 1997, OPTIMIZER MULTIMEDIA
[7]  
COCKSHOTT P, 2004, SIMD PROGRAMMING MAN
[8]  
COCKSHOTT P, 2000, TR200072 U GLASG DEP
[9]  
COCKSHOTT P, VECTOR PASCAL ARRAY, P83
[10]  
Cole M, 1989, ALGORITHMIC SKELETON