1999 Volume 14 Issue 5 Pages 891-899
A parallelizing compiler is a tool which analyzes sequential programs and restructures them as parallel programs. For parallelizing compilers, many methods of loop transformation have been proposed. However, it is difficult, for parallelizing compilers to check all data dependence of a program, which is one of the most important factors for loop transformations. Therefore parallelizing compilers often fail to extract parallelism of the program. One of the solutions of this problem is users' instruction. However, it is hard for users to grasp data dependence only from a source code. In this paper, we propose an explanation system using an abduction procedure which shows causes of failure in applying loop transformation methods. By this system, users can easily know which data dependences are found by a compiler and which data dependences are not. We extend an abduction procedure to show causes which we define. We implement the system and confirm the procedure works properly.