Evaluation of automatic parallelization algorithms to minimize speculative parallelism overheads: An experiment - Kumar, Sudhakar; Singh, Sunil Kr; Aggarwal, Naveen; Aggarwal, Kriti (Journal of discrete mathematical sciences & cryptography, 2021)
Automatic parallelization is a crucial objective of the parallel computing architecture that can be achieved through conversion of sequential code into multi-threaded code, which will run in parallel manner. This approach focuses largely on the loops since they take most of the execution time in programs. Thread level speculation techniques come into roleplay while checking for the dependencies. These dependencies cannot be identified at the compile time, thus providing a larger scope of parallelization when combined with other parallelisation techniques. This results in a greater speedup and more accurate parallel code formation. In this research paper, an experiment to evaluate the performance and comparative analysis has been done among key automatic parallelization algorithms on different parameters like number of cores, speedup and loop dependency taking into consideration of speculation.