Optimizing the parallel computation of linear recurrences using compact matrix representations

被引:4
|
作者
Nistor, Adrian [2 ]
Chin, Wei-Ngan [1 ]
Tan, Tiow-Seng [1 ]
Tapus, Nicolae [2 ]
机构
[1] Natl Univ Singapore, Dept Comp Sci, Singapore 117548, Singapore
[2] Univ Politehn Bucuresti, Dept Comp Sci, Bucharest, Romania
关键词
Memory optimization; Recursion; Matrix multiplication; Programmable graphics hardware; GRAPHICS HARDWARE; ALGORITHMS;
D O I
10.1016/j.jpdc.2009.01.004
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
This paper presents a novel method for optimizing the parallel computation of linear recurrences. Our method can help reduce the resource requirements for both memory and computation. A unique feature of our technique is its formulation of linear recurrences as matrix computations, before exploiting their mathematical properties for more compact representations. Based on a general notion of closure for matrix multiplication, we present two classes of matrices that have compact representations. These classes are permutation matrices and matrices whose elements are linearly related to each other. To validate the proposed method, we experiment with solving recurrences whose matrices have compact representations using CUDA on nVidia GeForce 8800 GTX GPU. The advantages of our technique are that it enables the computation of larger recurrences in parallel and it provides good speedups of up to eleven times over the un-optimized parallel computations. Also, the memory usage can be as much as nine times lower than that of the un-optimized parallel computations. Our result confirms a promising approach for the adoption of more advanced parallelization techniques. (C) 2009 Elsevier Inc. All rights reserved.
引用
收藏
页码:373 / 381
页数:9
相关论文
共 50 条