THE PROBLEM OF CHOICE OF TOOL MEANS OF THE SOFTWARE DEVELOPMENT FOR TEACHING PARALLEL PROGRAMMING IN UNIVERSITIES
DOI:
https://doi.org/10.32999/ksu2413-1865/2019-86-66Keywords:
parallel programming, parallel computing, software development tools, OpenMP, MPI, Java, C#Abstract
The article was written about the problem of developing parallel algorithms for students from computer sci- ences and their implementation in the programs in the teaching of discipline parallel programming. An analysis of modern software development tools, which may include libraries or classes for writing parallel code and external libraries, which, in combination with the programming language, provide the opportunity to develop
parallel programs. The external libraries include the following: OpenMP – Open Multi-Processing and MPI – Message Passing Interface. These libraries extend the capabilities of the C++ programming language and allow the development of parallel programs. Their main drawback – to develop a parallel algorithm, you will first need to develop a sequential algorithm. This development method greatly reduces the efficiency of paral- lel code and prevents students from developing parallel development algorithms. Among the most significant innovations in the C ++ 11 standard should include support for multithreaded applications. This will allow you to write on C ++ multithreaded programs with guaranteed behavior without relying on extensions dependent. Unlike the aforementioned libraries, the programming languages Java and C # already have a set of classes and interfaces that allows starting with the use of parallel algorithms for the development of parallel programs.
Key words: parallel programming, parallel computing, software development tools, OpenMP, MPI, Java, C#.