State-of-the-art programming languages for high-performance computer systems require a significant code revision for the porting of the same algorithm between different architectures. To solve this problem, we propose...
详细信息
ISBN:
(纸本)9783030365929;9783030365912
State-of-the-art programming languages for high-performance computer systems require a significant code revision for the porting of the same algorithm between different architectures. To solve this problem, we propose an architecture-independent Set@l programming language, which develops the main concepts of the COLAMO and SETL programming languages. Set@l represents the solution of a computational problem as sets with various attributes and relations between them. Furthermore, the Set@l language is based on the paradigm of aspect-oriented programming and describes an algorithm and features of its implementation as separate modules of a program. The Set@l syntax supports the classification of collections by various criteria, such as the type of parallelism, definiteness and optional user's attributes. To deal with the indefinite collections emerging in the case of the algorithm modification, the Vopenka's classification of collections by definiteness of their elements is introduced into the syntax of the Set@l programming language. In this paper, we consider the example of the Set@l application for the coding of lower-upper decomposition. The code shows that aspects can adapt the parallelizing of the basic algorithm to the implementation on computer systems with reconfigurable and multiprocessor architectures.
The development of new heterogeneous architectures for computer systems is an advanced research direction in the field of supercomputer engineering. At the same time, software porting between different heterogeneous a...
详细信息
ISBN:
(纸本)9783030281632;9783030281625
The development of new heterogeneous architectures for computer systems is an advanced research direction in the field of supercomputer engineering. At the same time, software porting between different heterogeneous architectures requires significant code revision as a consequence of the architectural limitations of the programming languages available. To solve this problem, we propose Set@l, a new architecture-independent programming language which extends some ideas of the COLAMO and SETL programming languages. In Set@l, an algorithm and its parallelization are described by separated modules of the program. This is determined by the application of the set-theoretic code view and the aspect-oriented programming paradigm. The source code in Set@l is architecture-independent and represents the solution to a computational problem as an information graph specified in terms of set theory and relational calculus. Aspects adapt a universal algorithm to the architecture and configuration of a particular computer system by means of partition and classification of sets. In contrast to SETL, Set@l offers different classification criteria for collections, particularly in accordance with the type of parallelism. Sets of indefinite type of parallelism are denoted as implicit ones. In the paper, we describe the fundamentals of architecture-independent programming in the Set@l language and consider an example in which Set@l is applied for coding Gaussian elimination.
A major reason for the lack of practical use of parallel computers has been the absence of a suitable model of parallel computation. Many existing models are either theoretical or are tied to a particular architecture...
详细信息
A major reason for the lack of practical use of parallel computers has been the absence of a suitable model of parallel computation. Many existing models are either theoretical or are tied to a particular architecture. A more general model must be architectureindependent, must realistically reflect execution costs, and must reduce the cognitive overhead of managing massive parallelism. A growing number of models meeting some of these goals have been suggested. We discuss their properties and relative strengths and weaknesses. We conclude that data parallelism is a style with much to commend it, and discuss the Bird-Meertens formalism as a coherent approach to data parallel programming.
暂无评论