Font Size: a A A

Research On Programming Model And Compiler Optimizations For Stream Program Base On X10

Posted on:2014-04-16Degree:MasterType:Thesis
Country:ChinaCandidate:X X LiuFull Text:PDF
GTID:2268330422963510Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
As the traditional single-core processor has been influenced by the powerconsumption, leakage and electromagnetic interference, its performance improvement hasbecome a bottleneck.In order to improve the overall performance of the processors,multi-core processors have gradually replaced it, kept working frequency, reduced theaverage power consumption of the processor, and obtained higher energy efficiency. Foranother, in order to utilize the resources of the underlying hardware interface explicitly,the parallel programming model for parallel computing on multicore platforms otherwiseincreases programming complexity. However, the emergence of stream programmingmodel solved such problems, which not only takes full advantage of the underlyingresources, but also provides simple, efficient, scalable programming method.For the difficulty of the poor programming efficiency and execution efficiency ofcurrent stream programming model, we designed and implemented a language COStreamand the corresponding optimized compiler system. The COStream language bases on themodifications and extensions of the standard C language syntax, supporting for theoperation of the grammatical structure: composite, operator, stream. After the phase oflexical analysis, syntax analysis, semantic analysis, the complier translates the languagegecode into an intermediate syntax tree and establish synchronous data flow diagram.Combined with the characteristics of the IBM parallel programming language X10, thecompiler established three optimization strategies: generating optimized code for the X10language, optimizing the division of SDF graph, optimizing the communications for theunderlying hardware resources. The Code generation optimization reduced the amount ofX10code; the task division optimization obtained load balancing, and avoided deadlock,at the same time reducd communication overhead; the communication optimizationdistinguished the machine-to-machine communication, the communication between theinternal threads of the machine, the thread internal communication and finally reduced thetotal communication overhead. After the three optimization strategy, the compilergenerates the X10code and then calls the X10compiler to generate the final object code.A set of experiments is designed with universal multicore processors and cluster ashardware environment, and common algorithms in digital media domain as benchmarks,to evaluate COStream’s performance. The experimental results show that the threecompiler optimization strategies have gained a greater performance boost,however, thereis still much room for improvement.
Keywords/Search Tags:X10, Stream Programming Model, Parallel Computing, Compiler Optimization
PDF Full Text Request
Related items