A new parallel programming language is being developed. A feature of this language will be that, based on the developed algorithm for solving any problem, it is possible with minimal effort to generate an effective parallel program code for different computation models. Such a parallel metalanguage is based on the dataflow computing model with a dynamically formed context. The graphic version of the metalanguage has the advantage of a clear presentation of information and is much better suited to the nature of human perception. The concept of graphical programming consists in compiling a program from a set of certain objects and connecting them together according to special rules. In addition, each of the objects and the connection between them in the form of a directional line have a set of properties and attributes, which, when compiled, convert them into an object with the necessary logical load corresponding to the program algorithm being created. The article provides a graphical representation and description of such metalanguage elements as “token”, “standard node” and “single-port node”, “node with three standard inputs” and “group symmetric node”, as well as program structures: “group”, “cycle” and ""module"". A whole series of parallel programs was created using a graphical version of the metalanguage.
Keywords: graphical representation, metalanguage, parallelization of computations, dataflow computing model
There are various programming models for high-performance computing systems. Each of them has its own requirements for the structure and properties of the algorithm, which force the rewriting of the algorithm to match them. One solution to this problem is to move to a new parallel programming paradigm. The new metalanguage of parallel programming will give the opportunity to create a mathematical description of the algorithm, and then derive from it effective programs for various computing platforms. The article describes the approaches to the translation of the program into its own basic subset of the parallel language of the parallel dataflow computing system (PDCS). The basic concepts of the metalanguage are defined. The limitations of the basic subset of the PDCS parallel language are given. It describes the options for translating multi-input nodes and program structures (groups, cycles and branches). Translation of the program on the metalanguage into the basic subset of the PDCS parallel language will further help to solve the problem of translating the metalanguage into languages of other architectural platforms.
Keywords: parallel programming, metalanguage, dataflow computing model, translation from metalanguage