Font Size: a A A

Design And Implementation Of Domain-Specific Language For Sparse Computing

Posted on:2024-05-27Degree:MasterType:Thesis
Country:ChinaCandidate:Y T HuFull Text:PDF
GTID:2568306932462094Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
In recent years,the computation of sparse matrix,namely sparse computing,has gradually become an important branch of computational mathematics.In order to maximize the performance of computing systems,sparse computing has begun to develop toward heterogeneous platforms.However,as the main development language,OpenCL’s complex syntax rules and tedious coding process greatly reduce the efficiency of developers.Therefore,to meet the requirements of development efficiency and program performance,based on model-driven software engineering and Xtext development framework,this thesis designs and implements a domain-specific language for sparse computing(SCDL)and provids a corresponding language toolchain(SCLT)system,which offers a unified development platform for sparse computing domain application models.Firstly,this thesis conducts a detailed analysis of the sparse computing domain with the help of domain experts,and uses the modeling tool EMF(Eclipse Modeling Framework)to build a meta-model of the sparse computing domain based on the extracted domain features;Then,based on the metamodel,the SCDL syntax rules are defined through mapping and syntax integration operations.To better adapt to the data parallel programming model of OpenCL,this thesis provides the data-allocation algorithm and inverse-mapping algorithm to optimize the representation of sparse computing algorithms.At the same time,in order to ensure the normal compilation and operation of the application model,the SCLT system has designed a grammar checker to instantly locate,prompt and quickly correct syntax error that appear on the syntax structure and userdefined syntax rule items.Finally,this thesis implements the conversion from SCDL code to OpenCL code based on template code generation technology.In response to the above design,this thesis first verifies through functional testing that the SCDL language and SCLT system can meet the functional requirements of users from three aspects:system integrity,syntax checking,and data parallelism.Then,this thesis conducts experiments on the programming efficiency of SCDL language and the performance of code generator.The experimental results show that for the same application model,the code size of SCDL language is only one sixth of that of OpenCL.In contrast,the SCDL language is more streamlined and has higher development efficiency.Meanwhile,this thesis also evaluates and analyzes the quality characteristics of the SCDL based on the DSL qualitative evaluation framework FQAD,and compares SCDL with Taichi and clSparse based on the quality characteristics.The analysis results demonstrate the points of SCDL in various quality characteristics.
Keywords/Search Tags:Domain specific language, Sparse computing, OpenCL, Meta model, Xtext
PDF Full Text Request
Related items