AUTOMATIC IDENTIFICATION OF PARALLEL UNITS AND SYNCHRONIZATION POINTSIN PROGRAMS FOR PARALLEL EXECUTION ON A DISTRIBUTED SYSTEM

Citation
Djv. Evans et Am. Goscinski, AUTOMATIC IDENTIFICATION OF PARALLEL UNITS AND SYNCHRONIZATION POINTSIN PROGRAMS FOR PARALLEL EXECUTION ON A DISTRIBUTED SYSTEM, Computer systems science and engineering, 12(5), 1997, pp. 307-315
Citations number
21
Categorie Soggetti
System Science","Computer Application, Chemistry & Engineering","Computer Sciences, Special Topics","Computer Science Theory & Methods","Computer Science Hardware & Architecture
ISSN journal
02676192
Volume
12
Issue
5
Year of publication
1997
Pages
307 - 315
Database
ISI
SICI code
0267-6192(1997)12:5<307:AIOPUA>2.0.ZU;2-G
Abstract
In this paper we demonstrate that it is possible to automatically iden tify writs of programs written in procedural languages and to execute these units in parallel on a distributed system. The target programs a re the general programming problems that arise rather than being restr icted to a specific domain. This is achieved by automatically identify ing units of parallelism based upon the basic block at the assembly la nguage level. The parallel units are then organised into sequences tha t are either independent of the flow of the program or dependent upon other sequences. Synchronisation points for the parallel units are ide ntified based on the dependent sequences. The implementation of this m ethodology by using the compiler and the interactions at the compiler/ operating system interface is discussed. This paper concludes by summa rising the major issues implementing such a method including the respo nsibilities for actions in a distributed environment followed by the p roposed future development. The benefits of implementing the concepts, algorithms and ideas presented in this paper are: the programmer is n or required to understand the parallelism of a problem, the programmer does not have to know what resources are available, the program can m ake use of distributed resources, users can take advantage of concurre nt processing without the need to understand the underlying architectu re, and parallelism is implemented in an implicit manner.