DocumentCode :
1271782
Title :
An efficient algorithm for out-of-core matrix transposition
Author :
Suh, Jinwoo ; Prasanna, Viktor K.
Author_Institution :
USC Inf. Sci. Inst., Arlington, VA, USA
Volume :
51
Issue :
4
fYear :
2002
fDate :
4/1/2002 12:00:00 AM
Firstpage :
420
Lastpage :
438
Abstract :
Efficient transposition of out-of-core matrices has been widely studied. These efforts have focused on reducing the number of I/O operations. However, in state-of-the-art architectures, the memory-memory data transfer time and the index computation time are also significant components of the overall time. In this paper, we propose an algorithm that considers the index computation time and the I/O time and reduces the overall execution time. Our algorithm reduces the total execution time by reducing the number of I/O operations and eliminating the index computation. In doing so, two techniques are employed: writing the data on to disk in pre-defined patterns and balancing the number of disk read and write operations. The index computation time, which is an expensive operation involving two divisions and a multiplication, is eliminated by partitioning the memory into read and write buffers. The expensive in-processor permutation is replaced by data collection from the read buffer to the write buffer. Even though this partitioning may increase the number of I/O operations for some cases, it results in an overall reduction in the execution time due to the elimination of the expensive index computation. Our algorithm is analyzed using the well-known linear model and the parallel disk model. The experimental results on a Sun Enterprise, an SGI R12000 and a Pentium III show that our algorithm reduces the overall execution time by up to 50% compared with the best known algorithms in the literature
Keywords :
buffer storage; disc storage; input-output programs; mathematics computing; matrix algebra; memory architecture; software performance evaluation; I/O operations; Pentium III; SGI R12000; Sun Enterprise; data collection; data writing; disk read operations; disk storage; disk write operations; divisions; execution time; in-processor permutation; index computation time; linear model; memory architectures; memory partitioning; memory-memory data transfer time; multiplication; out-of-core matrix transposition algorithm; parallel disk model; predefined data patterns; read buffers; write buffers; Algorithm design and analysis; Computer architecture; Memory architecture; Partitioning algorithms; Read-write memory; Sun; Writing;
fLanguage :
English
Journal_Title :
Computers, IEEE Transactions on
Publisher :
ieee
ISSN :
0018-9340
Type :
jour
DOI :
10.1109/12.995452
Filename :
995452
Link To Document :
بازگشت