• DocumentCode
    1546133
  • Title

    An efficient parallel-processing method for transposing large matrices in place

  • Author

    Portnoff, Michael R.

  • Author_Institution
    Lawrence Livermore Nat. Lab., CA, USA
  • Volume
    8
  • Issue
    9
  • fYear
    1999
  • fDate
    9/1/1999 12:00:00 AM
  • Firstpage
    1265
  • Lastpage
    1275
  • Abstract
    We have developed an efficient algorithm for transposing large matrices in place. The algorithm is efficient because data are accessed either sequentially in blocks or randomly within blocks small enough to fit in cache, and because the same indexing calculations are shared among identical procedures operating on independent subsets of the data. This inherent parallelism makes the method well suited for a multiprocessor computing environment. The algorithm is easy to implement because the same two procedures are applied to the data in various groupings to carry out the complete transpose operation. Using only a single processor, we have demonstrated nearly an order of magnitude increase in speed over the previously published algorithm by Gate and Twigg (1977) for transposing a large rectangular matrix in place. With multiple processors operating in parallel, the processing speed increases almost linearly with the number of processors. A simplified version of the algorithm for square matrices is presented as well as an extension for matrices large enough to require virtual memory
  • Keywords
    C listings; matrix algebra; multiprocessing systems; parallel algorithms; cache; efficient parallel-processing method; indexing calculations; large matrices transposition; large rectangular matrix; multiprocessor computing; parallelism; processing speed; transpose operation; virtual memory; Computer architecture; Concurrent computing; Displays; Image processing; Indexing; Matrix converters; Parallel processing; Random access memory; Read-write memory; Remote sensing;
  • fLanguage
    English
  • Journal_Title
    Image Processing, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1057-7149
  • Type

    jour

  • DOI
    10.1109/83.784438
  • Filename
    784438