Performance of Muse on the BBN Butterfly TC2000
Muse is a simple and efficient approach to Or-parallel implementation of the full Prolog language. It is based on having multiple sequential Prolog engines, each with its local address space, and some shared memory space. It is currently implemented on a number of bus-based and switch-based multiprocessors.
The performance results of Muse on bus-based multiprocessor machines have been presented in previous papers. This paper discusses implementation and performance results of Muse on the BBN Butterfly TC2000. It also compares the Muse results with the corresponding results of the Aurora Or-parallel Prolog system. The results of Muse execution show that high real speedups can be achieved on Prolog programs that exhibit coarse-grained parallelism, the scheduling overhead being equivalent to around 8 – 26 Prolog procedure calls per task, and that for a large set of benchmarks the Muse system is faster than the Aurora system.
KeywordsProlog Program Task Size Muse Worker Prolog System Schedule Overhead
Unable to display preview. Download preview PDF.
- Khayri A. M. Ali and Roland Karlsson. The Muse Or-Parallel Prolog Model and its Performance. In Proceedings of the 1990 North American Conference on Logic Programming, pages 757–776, MIT Press, October 1990.Google Scholar
- Khayri A. M. Ali and Roland Karlsson. Scheduling Or-Parallelism in Muse. In Proceedings of the 1991 International Conference on Logic Programming, pages 807–821, Paris, June 1991.Google Scholar
- Khayri A.M. Ali, Roland Karlsson, and Shyam Mudambi. Performance of Muse on Switch-Based Multiprocessor Machines. Submitted to the NGC Journal, 1991.Google Scholar
- Uri Baron, Jacques Chassin de Kergommeaux, Max Hailperin, Michael Ratcliffe, Philippe Ropert, Jean-Claude Syre, and Harald Westphal. The Parallel ECRC Prolog System PEPSys: An Overview and Evaluation Results. In Proceedings of the International Conference on Fifth Generation Computer Systems 1988, pages 841–850, ICOT, November 1988.Google Scholar
- Alan Calderwood and Péter Szeredi. Scheduling Or-parallelism in Aurora—the Manchester scheduler. In Proceedings of the sixth International Conference on Logic Programming, pages 419–435, MIT Press, June 1989.Google Scholar
- Mats Carlsson and Johan Widen. SICStus Prolog User's Manual. SICS Research Report R88007B, October 1988.Google Scholar
- Bogumil Hausman. Pruning and Speculative Work in OR-parallel Prolog. PhD thesis, Swedish Institute of Computer Science, SICS Dissertation Series 01 (SICS/D-90-9901), March 1990.Google Scholar
- Ewing Lusk, David H. D. Warren, Seif Haridi, et al. The Aurora Or-parallel Prolog System. New Generation Computing, 7(2,3): 243–271, 1990.Google Scholar
- Shyam Mudambi. Performance of Aurora on NUMA machines. In Proceedings of the 1991 International Conference on Logic Programming, Paris, June 1991.Google Scholar
- Péter Szeredi. Performance analysis of the Aurora Or-parallel Prolog System. In Proceedings of the 1989 North American Conference on Logic Programming, pages 713–732, MIT Press, March 1989.Google Scholar
- David H. D. Warren. The SRI Model for Or-parallel Execution of Prolog-Abstract Design and Implementation Issues. In Proceedings of the 1987 Symposium on Logic Programming, pages 92–102, 1987.Google Scholar