TAM: A Front-End to an Auto-Parallelizing Compiler
ACM Transactions on Asian and Low-Resource Language Information Processing
https://doi.org/10.1145/3543510Abstract
The multi-core architecture has revolutionized the parallel computing. Despite this, the modern age compilers have a long way to achieve auto-parallelization. Through this paper, we introduce a language that encouraging the auto-parallelization. We are also introducing Front-End for our auto-parallelizing compiler. Later, we examined our compiler employing a different number of core and verify results based on different metrics based on total compilation time, memory utilization, power utilization and CPU utilization. At last, we learned that parallelizing multiple files engage more CPU resources, memory and energy, but it finishes the task at hand in less time. In this paper, we have proposed a loop code generation technique that makes the generation of nested loop IR code faster by dividing the blocks into some extra code blocks using a modular approach. Our TAM compiler technique speedup by 7.506, 5.283 and 2.509 against sequential compilation when we utilized 8, 4 and 2 cores re...
References (15)
- Amit Barve and Brijendra Kumar Joshi. 2012. Parallel lexical analysis on multi-core machines using divide and conquer. In 2012 Nirma University International Conference on Engineering (NUiCONE). 1ś5. https://doi.org/10.1109/NUICONE.2012.6493218
- Amit Barve and Brijendra Kumar Joshi. 2014. Parallel syntax analysis on multi-core machines. In 2014 International Conference on Parallel, Distributed and Grid Computing. 209ś213. https://doi.org/10.1109/PDGC.2014.7030743
- W. Blume, R. Doallo, R. Eigenmann, J. Grout, J. Hoelinger, and T. Lawrence. 1996. Parallel programming with Polaris. Computer 29, 12 (1996), 78ś82. https://doi.org/10.1109/2.546612
- Xin Chen and David Pager. 2011. Full LR(1) Parser Generator Hyacc and Study on the Performance of LR(1) Algorithms. 83ś92. https://doi.org/10.1145/1992896.1992907
- Joel E Denny and Brian A Malloy. 2010. The IELR (1) algorithm for generating minimal LR (1) parser tables for non-LR (1) grammars with conlict resolution. Science of Computer Programming 75, 11 (2010), 943ś979.
- Sanju. V Farhanaaz. 2016. An Exploration on Lexical Analysis. International Conference on Electrical, Electronics, and Optimization Techniques (ICEEOT), 253ś258. https://doi.org/10.1109/ICEEOT.2016.7755127
- Clemens Grelck and Sven-Bodo Scholz. 2007. SAC: Of-the-shelf support for data-parallelism on multicores. 25ś33. https://doi.org/10. 1145/1248648.1248654
- Jing Guo, Jeyarajan Thiyagalingam, and Sven-Bodo Scholz. 2011. Breaking the GPU Programming Barrier with the Auto-Parallelising SAC Compiler. Association for Computing Machinery, New York, NY, USA, 15ś24. https://doi.org/10.1145/1926354.1926359
- Aaron W. Hsu. 2016. The Key to a Data Parallel Compiler. Association for Computing Machinery, New York, NY, USA, 32ś40. https://doi.org/10.1145/2935323.2935331
- Manju Mathews and Jisha P Abraham. 2016. Automatic code parallelization with openmp task constructs. In 2016 International Conference on Information Science (ICIS). IEEE, 233ś238.
- ACM Trans. Asian Low-Resour. Lang. Inf. Process.
- Asst Professor; Mrs.G.Umarani Srikanth. 2010. Parallel Lexical Analyzer on the Cell Processor. In Fourth IEEE International Conference on Secure Software Integration and Reliability Improvement Companion. IEEE. https://doi.org/10.1109/SSIRI-C.2010.16
- Varsha. K.. R. 2017. Automatic Parallelization Tools: A Review. International Journal of Engineering Science and Computing.
- Sudhakar Sah and Vinay G. Vaidya. 2012. Article: A Review of Parallelization Tools and Introduction to Easypar. International Journal of Computer Applications 56, 12 (October 2012), 30ś34. Full text available.
- Gaurav Singal, Dinesh Gopalani, Riti Kushwaha, and Tapas Badal. 2019. Automatic Parallelization of C Code Using OpenMP. In International Conference on Emerging Technologies in Computer Engineering. Springer, 298ś309.