An or-parallel prolog execution model for a distributed shared memory machine
Recently, new parallel architectures, namely distributed shared memory architectures, have been proposed and built. These combine the ease-of-use of shared memory architectures with the scalability of the message-passing architectures. These architectures provide software and hardware support for shared virtual address space on physically distributed memory.
This paper describes Dorpp, an execution model that supports or-parallelism for these machine architectures, namely for the EDS parallel machine. Dorpp uses a shared memory model for or-parallelism. It attempts, however, at exploiting locality and at reducing communication overheads through scheduling and by caching accesses to remote shared data. The problem of memory coherency of cached data is discussed and solutions are proposed. Preliminary evaluation results of the execution model through simulation are presented.
KeywordsLanguages for AI Or-parallel Prolog Distributed Shared Memory Memory Choerency Scheduling
Unable to display preview. Download preview PDF.
- [AK90]Ali, K., Karlsson, R.: The Muse Or-parallel Prolog Model and its Performance, In Proc. of NACLP'90. The MIT Press, 757–776, Oct., (1990)Google Scholar
- [AG89]Almasi, G., Gottlieb, A.: Highly Parallel Computing. Benjamin/Cummings Inc. (1989)Google Scholar
- [Car90]Carlsson, M.: Design and Implementation of an OR-Parallel Prolog Engine. Ph. D. Thesis, SICS, Sweden, (1990)Google Scholar
- [CS89]Calderwood, A. and Szeredi, P.: Scheduling Or-parallelism in Aurora — the Manchester Scheduler. In Proc. of 6th ICLP, The MIT Press, Lisbon, 419–435, June, (1989)Google Scholar
- [GJ90]Gupta, G. and Jayaraman, B.: On Criteria for Or-parallel Execution of Logic Programs. In Proc. of NACLP'90. The MIT Press, Oct., (1990)Google Scholar
- [IB90]Istavrinos, P. and Borrmann, L.: A process and memory model for a distributed-memory machine. In Proc. of CONPAR'90, LNCS-457, Springer-Verlag, 479–488, Zurich, Sept., (1990)Google Scholar
- [LWH88]Lusk, E., Warren, D.H.D., Haridi, S., et al.: The Aurora Or-Parallel Prolog System. In Proc. of FGCS'88, 819–830, ICOT, Tokyo, Japan, Nov. (1988)Google Scholar
- [Sar91]Sargeant, J.: EDS Parallel Machine Simulator: version 2. Tech. Report EDS.UD.3I.M016, EDS Group, Univ. Manchester, Nov., (1991)Google Scholar
- [She86]Shen, K.: An Investigation of the Argonne Model of Or-Parallel Prolog. M.Sc. Thesis, Dep. of Comp. Science, Univ. of Manchester, (1986)Google Scholar
- [SK90]Shivaratri, N.G. and Krueger, P.: Two Adaptative Location Policies for Global Scheduling Algorithms. In Proc. of 10th Int. Conf. on Distributed Computing Systems, Paris, IEEE, 502–509, May, (1990)Google Scholar
- [Sil93]Silva, F.M.A.: An Implementation of Or-Parallel Prolog on a Distributed Shared Memory Architecture. Ph.D. Thesis, Dept. of Comp. Science, Univ. of Manchester, (1993)Google Scholar
- [Sze89]Szeredi, P.: Performance Analysis of the Aurora Or-parallel Prolog System. In Proc. of NACLP'89, The MIT Press, 713–732, Oct., (1989)Google Scholar
- [Tic87]Tick, E.: Memory Performance of Prolog Architectures. Kluwer Academic Publishers, (1987)Google Scholar
- [Tic91]Tick, E.: Parallel Logic Programming. The MIT Press, (1991)Google Scholar
- [WTW90]Ward, M., Townsend, P., and Watzlawik, G.: EDS Hardware Architecture. In Proc. of CONPAR'90. Springer-Verlag, LNCS-457, 816–827, Zurich, Sept. (1990)Google Scholar
- [War87a]Warren, D.H.D.: Or-Parallel Execution Models of Prolog. In Proc. of TAPSOFT'87. Springer-Verlag, LNCS, 243–259, Pisa, March, (1987)Google Scholar
- [War87b]Warren, D.H.D.: The SRI Model for Or-Parallel Execution of Prolog — Abstract Design and Implementation Issues. In Proc. of ISLP'87, IEEE, San Francisco, California, 92–102, (1987)Google Scholar