Matrix partitioning on a virtual shared memory parallel machine
- 1 April 1996
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Parallel and Distributed Systems
- Vol. 7 (4) , 343-355
- https://doi.org/10.1109/71.494629
Abstract
The general problem considered in the paper is partitioning of a matrix operation between processors of a parallel system in an optimum load-balanced way without potential memory contention. The considered parallel system is defined by several features the main of which is availability of a virtual shared memory divided into segments. If partitioning of a matrix operation causes parallel access to the same memory segment with writing data to the segment by at least one processor, then contention between processors arises which implies performance degradation. To eliminate such situation, a restriction is imposed on a class of possible partitionings, so that no two processors would write data to the same segment. On the resulting class of contention-free partitionings, a load-balanced optimum partitioning is defined as satisfying independent minimax criteria. The main result of the paper is an algorithm for finding the optimum partitioning by means of analytical solution of respective minimax problems. The paper also discusses implementation and performance issues related to the algorithm, on the basis of experience at Kendall Square Research Corporation, where the partitioning algorithm was used for creating high-performance parallel matrix libraries.Keywords
This publication has 15 references indexed in Scilit:
- Measurement of memory access contentions in multiple vector processor systemsPublished by Association for Computing Machinery (ACM) ,1991
- Memory conflicts and machine performancePublished by Association for Computing Machinery (ACM) ,1989
- Cache coherence protocols: evaluation using a multiprocessor simulation modelACM Transactions on Computer Systems, 1986
- Memory coherence in shared virtual memory systemsPublished by Association for Computing Machinery (ACM) ,1986
- Anomalies in parallel branch-and-bound algorithmsCommunications of the ACM, 1984
- The Architecture of an Integrated Local NetworkIEEE Journal on Selected Areas in Communications, 1983
- Cache MemoriesACM Computing Surveys, 1982
- LINPACK Users' GuidePublished by Society for Industrial & Applied Mathematics (SIAM) ,1979
- A New Solution to Coherence Problems in Multicache SystemsIEEE Transactions on Computers, 1978
- A General Model for Memory Interference in MultiprocessorsIEEE Transactions on Computers, 1977