| Synchronization using counting semaphores |
| Full text |
Pdf
(1.09 MB)
|
| Source
|
International Conference on Supercomputing
archive
Proceedings of the 2nd international conference on Supercomputing
table of contents
St. Malo, France
Pages: 627 - 637
Year of Publication: 1988
ISBN:0-89791-272-1
|
|
Author
|
|
V. Sarkar
|
T. J. Watson Research Center, Yorktown Heights, NY
|
|
| Sponsor |
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 15, Downloads (12 Months): 55, Citation Count: 5
|
|
|
ABSTRACT
This paper studies the optimization problem of enforcing a dependence graph with the minimum number of synchronization operations. For a dependence graph with N vertices, it is shown that binary semaphores may require &Ogr;(N2) operations, compared to &Ogr;(N) operations for counting semaphores. Though the optimization problem of using the minimum number of counting semaphore operations is shown to be NP-complete, we present an approximation algorithm that is observed to be very close to optimal (within 0.5%) on small, randomly generated dependence graphs. A surprising property of the problem is that the inclusion (rather than removal) of transitive edges can actually help reduce the number of synchronization operations.
We characterize as class of dependence graphs for which the approximation algorithm is optimal. This class includes forests of fan-in trees, fan-out trees and series-parallel graphs. The number of synchronization operations needed for binary and counting semaphores are compared for randomly generated dependence graphs, using an implementation of the approximation algorithm in LISP/VM. The experimental results show that the use of counting semaphores significantly reduces the total number of synchronization operations, compared to binary semaphores.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
Zhiyuan Li. A Technique for Reducing Synchronization Overhead in Large Scale Multiprocessors, Center for Supercomputing Research & Development, U. of illinois, May 1985. CSRD Report No. 521.
|
| |
3
|
Samuel Pratt Midkiff. Automatic Generation of Synchronization Instructions For Parallel Processors, Center for Supercomputing Research & Development, U. of Illinois, May 1986. CSRD Rept. No.588, UILU-ENG-86-8002.
|
| |
4
|
|
| |
5
|
Robert Tarjan. Depth-first Search and Linear Graph Algorithms. SIAM Journal of Computing, 1,2:146-160, September 1972.
|
CITED BY 6
|
|
T. M. Watts , M. L. Soffa , R. Gupta, Techniques for integrating parallelizing transformations and compiler-based scheduling methods, Proceedings of the 1992 ACM/IEEE conference on Supercomputing, p.830-839, November 16-20, 1992, Minneapolis, Minnesota, United States
|
|
|
|
|
|
F. Allen , M. Burke , R. Cytron , J. Ferrante , W. Hsieh, A framework for determining useful parallelism, Proceedings of the 2nd international conference on Supercomputing, p.207-215, June 1988, St. Malo, France
|
|
|
|
|
|
Jun Shirako , Jisheng M. Zhao , V. Krishna Nandivada , Vivek N. Sarkar, Chunking parallel loops in the presence of synchronization, Proceedings of the 23rd international conference on Supercomputing, June 08-12, 2009, Yorktown Heights, NY, USA
|
|
|
|
|