RUS  ENG
Full version
JOURNALS // Program Systems: Theory and Applications // Archive

Program Systems: Theory and Applications, 2017 Volume 8, Issue 4, Pages 221–224 (Mi ps287)

This article is cited in 5 papers

Hardware, software and distributed supercomputer systems

How to create deterministic by construction parallel programs? Problem statement and survey of related works

A. I. Adamovicha, And. V. Klimovb

a Ailamazyan Program Systems Institute of Russian Academy of Sciences
b Keldysh Institute of Applied Mathematics of RAS

Abstract: One of the main problems that make parallel programming unreliable, labor-intensive, error-prone, and programs difficult to debug, is the non-determinism of processes and results of computation, when several runs of the same program with the same input data can produce different results because of different order of interaction of parallel processes. In connection with the rapid growth in the complexity of programs for supercomputers, the idea of parallel computations with determinism, guaranteed by language and a programming system has become more popular in the last decade and is becoming more vital.
The problem of how to make parallel programming as deterministic as possible is analyzed. An overview of some approaches to solving it is given. The task of developing a system that provides an opportunity to write both deterministic and nondeterministic code with guarantees to the application programmer that his program is deterministic, is discussed. (In Russian).

Key words and phrases: parallel computation models, deterministic programs, functional programming, object-oriented programming.

UDC: 519.685+519.682.2+004.032.22

Received: 11.12.2017
Accepted: 28.12.2017

DOI: 10.25209/2079-3316-2017-8-4-221-244



© Steklov Math. Inst. of RAS, 2024