Vectorization Techniques for Prolog without Explosion
Kanada, Y., and Sugaya, M., International Joint Conference on Artificial Intelligence '89, pp. 151-156, 1989.
[ 日本語のページ ]
[ Original paper PDF file]
[ A better paper PDF file]
Abstract: This paper describes a technique for executing logic programming languages such as Prolog for the Cray-type vector processors. This technique, which we call the parallel backtracking technique, enables a kind of or-parallel execution without process explosion. The compiled intermediate language code for the parallel backtracking execution is the same as the code presented in our previous paper. The compilation is based on a kind of program transformation called or-vectorization. However, the interpretation of the intermediate code is changed to enable the parallel backtracking execution. An execution simulator and a compiler prototype were developed. We have not yet implemented this technique to our native code execution system, but we expect a performance of eight times or more higher than scalar processing upon implementation.
Introduction to this research theme: Logic/Symbolic Vector Processing