Font Size: a A A

Graphical Programming Tools For Parallel Programming In Scientific Computing

Posted on:2018-03-12Degree:MasterType:Thesis
Country:ChinaCandidate:Z W SunFull Text:PDF
GTID:2428330569999070Subject:Computer technology
Abstract/Summary:PDF Full Text Request
Benefited from the development of supercomputer in recent years,as one of the most crucial application fields of high performance computing,scientific computing has made rapid development.Simulable application problem is more and more elaborate,and the scale is more and more tremendous,and scientific computing makes it possible for several actual applications,which was impossible to be simulated before.Besides,it extends the applied range greatly.However,the practical application is cumulatively sophisticated,as a result,the development of high performance parallel application is depends on the physical,chemical,and mechanical application domain experts increasingly.Although the emergence of high-performance programming framework has lowered the developing difficulty of scientific computing applications to some extent,it still requires the domain expert to master corresponding development languages and programming framework.To solve problems above,simplify the development of scientific computing parallel application and minimize time cost in the development process,in addition,considering the PETSc as a high performance parallel programming framework,it has strong universality,which can satisfy the requirements of different applications.Consequently,based on the PETSc high-performance programming framework,combined with the graphical programming techniques and code generation technology,the scientific computing oriented graphical programming tools is designed and developed in this paper.Our main works are listed in the following:1)On PETSc programming framework,a new variable system was designed,and we increased the Vector and Matrix data types based on the type of int,float,double.Besides,we designed a novel component system,not only implemented several commonly used components,but also increased a new PETSc-based components.2)On the basis of the variable system and component system,through a combination of graphical programming techniques with PETSc programming framework,the client with variable parameter components and support graphical programming was designed and implemented.The graphical programming client can significantly reduce the programming difficulty of PETSc-based scientific computing parallel applications.The client was developed on Qt,and not only for Windows,but also Linux systems and OSX systems.3)Further by combining automatic code generation technology with the PETSc programming framework,the PETSc-based code generator was designed and implemented.And the graphical programming tool also provided custom component function,through which can not only greatly improve the reuse rate of the code,but also achieve multi-user collaboration,as well as greatly shorten the development time of scientific computing parallel applications.Combined with PETSc programming framework implementation,the graphical programming tool is a blend of graphical programming ideas and code automatic generation technology,it can support the implementation of PETSc-based scientific computing parallel applications,and is integrated with compile and run functions.What users supposed to do is to design the flow diagram of program execution and set the parameters of the corresponding components,and the code was automatically generated by the programming tool.The practical application of this tool in the implementation of neutron transport program shows that this tool can effectively improve efficiency of software development and lower difficulty of user programming.
Keywords/Search Tags:Graphical programming, parallel computing, parallel programming framework, code generation, PETSc
PDF Full Text Request
Related items