Abstract

Computationally expensive programs spend most of their time in the execution of DO-loops [1,2]. Therefore, an efficient approach for exploiting potential parallelism is to concentrate on the parallelism available in loops in ordinary programs and has a considerable effect on the speedup [3,4]. Through some loop transformations using a dependence distance in single loops [6,10], a loop can be splitted into partial loops to be executed in parallel without violating data dependence relations, that is, the size of distance can be used as a reduction factor [6], which is the number of iterations that can be executed in parallel. In the case of non-constant distance such that it varies between different instances of the dependence, it is much more difficult to maximize the degree of parallelism from a loop. Partitioning of loops requires efficient and exact data dependence analysis. A precise dependence analysis helps in identifying dependent/independent iterations of a loop. And it is important that appropriate dependence analysis be applied to exploit maximum parallelism within loops. We can consider some tests that examine the dependence of onedimensional subscripted variables— the separability test, the GCD test and the Banerjee test [8,11]. In general, the GCD test is applied first because of its simplicity, even if it is an approximate test. Next, for the case that the gcd test is true, the separability test is attempted again, and through this exact

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.