An extensible object-oriented platform NUTS for distributed computing is described which is based on an object-oriented programming environment NUT which supports automatic synthesis of programs. It is built on top of the Parallel Virtual Machine (PVM), and hides all low-level features of the latter. The language of NUTS is a concurrent object-oriented programming language with coarse-grained parallelism and distributed shared memory communication model implemented on a distributed memory architecture. It differs from other languages of concurrent programming in the following: concurrent processes are represented by packages which are semantically richer entities than objects, inter-process communication is performed in terms of classes, objects, scripts and packages, using the EDA communication model; processes can be arranged into structured collections: grids which enable one to program data-parallel computations on a high level; sequential segments of programs can be synthesized automatically from specifications represented as classes using the program synthesis features of NUT. Examples of usage of generic parallel computing control structures PARDIF and PARARR are given.
[1]
Mario Tokoro,et al.
Object-oriented concurrent programming
,
1987
.
[2]
Mattin Addibpour,et al.
Control Structures for Parallel Computing in NUT
,
1995
.
[3]
Enn Tyugu,et al.
Higher-Order Functional Constraint Networks
,
1993,
NATO ASI CP.
[4]
Enn Tyugu,et al.
Distributed Programming Toolkit for NUT
,
1994
.
[5]
Jingfeng Xia.
Publishers
,
1935,
Predatory Publishing.
[6]
L-E Thorelli,et al.
The EDA Multiprocessing Model
,
1994
.
[7]
James C. Browne,et al.
Visual programming and debugging for parallel computing
,
1995,
IEEE Parallel Distributed Technol. Syst. Appl..
[8]
Ronald H. Perrott,et al.
Parallel programming
,
1988,
International computer science series.
[9]
Klaus-Peter Löhr,et al.
Object-Oriented Concurrent Programming
,
1992,
TOOLS.
[10]
Jack Dongarra,et al.
PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing
,
1995
.
[11]
Ken Kennedy,et al.
A Parallel Programming Environment
,
1985,
IEEE Software.