Font Size: a A A

Design And Implementation Of Automatic Code Generator For TLS Systems

Posted on:2018-05-30Degree:MasterType:Thesis
Country:ChinaCandidate:J L WangFull Text:PDF
GTID:2428330569498974Subject:Computer science and technology
Abstract/Summary:PDF Full Text Request
With the fast development of computer architecture and manufacture techniques,many-core and heterogeneous become the main trend of current high performance processor architectures.This brings some new challenges to parallel programming models,i.e.,a good parallel programming model could not only provide simple structure of parallel codes,but also exploit coarse-grained parallelism efficiently.Thread-level speculative model meets both requirements through identifying possible parallel regions in a program with simple directives.The simplicity of thread-level speculative model is guaranteed by its compiler.In other words,its compiler can convert the annotated sequential codes to parallelized codes automatically.Based on the deep analysis of HEUSPEC,a software thread-level speculation model proposed by our group,this thesis proposes and implements an automatic code generator(C2H)for HEUSPEC to convert sequential C codes to HEUSPEC C codes automatically.C2 H simplifies the development of HEUSPEC parallel codes greatly and makes it easy for programmers to master the use of HEUSPEC.The main work and contributions of this thesis are three-folded:1.Based on the deeply analysis of HEUSPEC speculation model and the structure of HEUSPEC parallel codes,we proposes the workflow to convert sequential C codes to parallel HEUSPEC C codes.Firstly,all possible parallel regions in sequential C codes are identified and all conflict variables and local variables in them are identified.Then,the non-speculative main thread and speculative sub-threads are generated.And finally,the entire parallel HEUSPEC are generated.2.Loop structures in sequential C codes are the main source of parallel region.In this thesis,approaches to parallelize three different loops structures are proposed respectively,to convert them to corresponding parallel HEUSPEC codes.3.We propose an automatic code generator,C2 H,to convert sequential C codes to parallel HEUSPEC codes.C2 H has been implemented based on Clang compiler and evaluated on Intel? Core? i5-3200 quad-core processor platform.Experimental results indicate that,parallel HEUSPEC codes generated by C2 H not only comply with the HEUSPEC specification and have good readability,but also provide close performance to those generated manually by programmers.In summary,C2 H code generator proposed in this thesis solves the problem of current thread-level speculation model to some extent.It dramatically decreases the burden of programmers and makes HEUSPEC parallel programming model be simple to use.
Keywords/Search Tags:Speculative parallelization, thread level parallelization, HEUSPEC, Clang
PDF Full Text Request
Related items