{"title":"Framework for Automatic Parallelization","authors":"R. AnalaM., Deepika Dash","doi":"10.1109/HIPCW.2018.8634283","DOIUrl":null,"url":null,"abstract":"Continuous research to increase the performance gain of the device in the field of computing has led to the advent of multi-core processors, which include more than one independent processing unit (core). This revolution on the hardware-side of the computer demands the software programmers to exploit the processing power by developing parallel programs. Programmers prefer writing serial applications since it is easier to put their ideas into the form of serial code than a parallel one. Hence, parallelizing such serial applications without much burden on the developer becomes paramount. This paper proposes a system that automatically parallelizes serial C code. The system proposed performs detailed dependency analysis, identifies the ‘for’ blocks that satisfy the criteria of being potential to be parallelized using the OpenMP framework, identifies the regions in such potential ‘for’ blocks which need to be run in a critical section. The correctness of the input code is ensured by this system. Also, post execution analysis i.e. execution of the input program to monitor the usage of resources is avoided which makes this system faster than some of the existing systems.","PeriodicalId":401060,"journal":{"name":"2018 IEEE 25th International Conference on High Performance Computing Workshops (HiPCW)","volume":"51 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2018 IEEE 25th International Conference on High Performance Computing Workshops (HiPCW)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HIPCW.2018.8634283","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
Continuous research to increase the performance gain of the device in the field of computing has led to the advent of multi-core processors, which include more than one independent processing unit (core). This revolution on the hardware-side of the computer demands the software programmers to exploit the processing power by developing parallel programs. Programmers prefer writing serial applications since it is easier to put their ideas into the form of serial code than a parallel one. Hence, parallelizing such serial applications without much burden on the developer becomes paramount. This paper proposes a system that automatically parallelizes serial C code. The system proposed performs detailed dependency analysis, identifies the ‘for’ blocks that satisfy the criteria of being potential to be parallelized using the OpenMP framework, identifies the regions in such potential ‘for’ blocks which need to be run in a critical section. The correctness of the input code is ensured by this system. Also, post execution analysis i.e. execution of the input program to monitor the usage of resources is avoided which makes this system faster than some of the existing systems.