Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

Instruction-level parallelism in Prolog: analysis and architectural support

Published: 01 April 1992 Publication History

Abstract

The demand of increasing computation power for symbolic processing has given a strong impulse to the development of ASICs dedicated to the execution of prolog. Unlike past microcoded implementation based on the Warren machine model, novel trends in high performance Prolog processors suggest the implementation of RISC-based processors committed to prolog only through the adoption of a few basic dedicated features, like the Berkeley Abstract Machine (BAM) processor.
Following the idea of using a smart compiler for a simple instruction set, the SYMBOL project represents an experiment in applying global compaction techniques and VLIW design philosophy to the static exploitation of instruction-level parallelism in Prolog.
This paper presents code analysis results and shows how we can approach the theoretical speed-up limit (about 3) imposed by Amdahl's law on shared memory models, by means of global code optimizations and a suitable architectural support. In addition, we show implementation details and some preliminary data of a VLSI prototype architecture.

References

[1]
G. M. Amdahl, "Validity of the single processor approach to achieving large scale computing capabilities", Proc. AFIPS 1967 Spring Joint Computer Conference, N.J., 1967.
[2]
A. Aho, R. Seth J, D. Ullman, Compilers: Principles, Techm'ques and Tools, Addison Wesley, 1986.
[3]
H. Benker, L Beacco, S. Bescos et al., " KCM: A Knowledge Crunching Machine", 16th International Symposium on Computer Architecture (ISCA16), pp. 186-194, 1989.
[4]
G. Borriello, A. Cherenson, P. Danzig, M. Nelson, "Special or General-PtnImse Hardware for Prolog: A Comparison", Technical report, University of California at Berkeley, 1986.
[5]
T. Dobry, A High Performance Architecture for Prolog, PhD Thesis, University of California at Berkeley, 1987.
[6]
W.F.Clocksin, C.S. Mellish, Programming in Prolog, Springer-Verlag, New York, 1981.
[7]
J. Ellis, Bulldog: A Compiler for VL{W architectures, The MIT Press, Boston, Mass., 1985.
[8]
A.De Gloria, P.Faraboschi, "An Evaluation System for Application Specific Architectures", 23rd International Workshop on Microprogramming and Microarchitecture (MICRO23), 1990.
[9]
A.De Gloria, P.Faraboschi, E. Guidetti, "A Archi~ for Prolog", IEEE MicroArch, Vol. 6, N. 1, Nov 1991, pp 27-32.
[10]
J. Fisher, "Trace Scheduling: a technique for global microcxxte compaction", IEEE Trans. on Computer, vol. C-30, pp. 478-490, 1981.
[11]
J. Fisher, "Very Long Instruction Word Architectures and the ELI-512", Proc. of l Oth International Symposium on Computer Architecture (ISCAIO), 1983.
[12]
R. Haygood, A Prolog Benchmark Suite for Aquarius, Report. No. UCB/UCSD 89/509, University of California at Berkeley, Apr. 1989.
[13]
J. Hennessy, "VLSI Processor Architecture", IEEE Trans. on Computer, pp. 1221-1246, 1983.
[14]
J. Hennessy, D. Patterson. Computer Architecture: a Quantitative Approach, Morgan Kaufmann Publ., San Mateo, CA, 1990.
[15]
B. Holmer, B. Sano, M. Carlton, P. Van Roy, R. Haygood, W. Bush, A. Despain, J. Pendleton, T. Dobry,"Fast Prolog with an Extended General Purlx)se Architecture", 17the International Symposium on Computer Architecture (ISCA17), pp. 282-291, 1990.
[16]
M. Katevenis, Reduced Instruction Set computer for VLSI, Computer Science Division (EECS) UCB/CSB 83/141, University of California At Berkeley, Oct. 1983.
[17]
, R. Kowalski, Logic for Problem Solving, Elsevier Publ., North-Holland, 1979.
[18]
E. Tick, Studies in Prolog Architectures, Technical Report, Stanford University, 1987.
[19]
P. Van Roy, A Prolog Compiler for the PLM, Master Thesis, University of California at Berkeley, 1984
[20]
P. Van Roy, Can Logic Programming Execute as Fast as Imperative Progr~8?, PhD Th~sis, R~port No. UCB/CSD 901600 (EECS) University of California at Berkeley, CA, Dec. 1990.
[21]
D. Warren, An Abstract Prolog Instruction Set, Artificial Intelligence Center, SRI International, 1983.
[22]
M. Wolfe, Optimizing supercompilers for supercomputcrs, The MIT Press, Boston, Mass. 1989.

Cited By

View all
  • (2024)Alessandro De Gloria, a Pioneer in Electronic Engineering ApplicationsApplications in Electronics Pervading Industry, Environment and Society10.1007/978-3-031-48121-5_1(3-11)Online publication date: 13-Jan-2024
  • (1994)Exploitation of Fine-grain Parallelism in Logic Languages on Massively Parallel ArchitecturesProceedings of the IFIP WG10.3 Working Conference on Parallel Architectures and Compilation Techniques10.5555/647042.713814(225-234)Online publication date: 24-Aug-1994
  • (1994)Branch prediction for enhancing fine-grained parallelism in PrologProceedings of 1994 International Conference on Parallel and Distributed Systems10.1109/ICPADS.1994.590462(744-751)Online publication date: 1994
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM SIGARCH Computer Architecture News
ACM SIGARCH Computer Architecture News  Volume 20, Issue 2
Special Issue: Proceedings of the 19th annual international symposium on Computer architecture (ISCA '92)
May 1992
429 pages
ISSN:0163-5964
DOI:10.1145/146628
Issue’s Table of Contents
  • cover image ACM Conferences
    ISCA '92: Proceedings of the 19th annual international symposium on Computer architecture
    May 1992
    439 pages
    ISBN:0897915097
    DOI:10.1145/139669

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 April 1992
Published in SIGARCH Volume 20, Issue 2

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)51
  • Downloads (Last 6 weeks)13
Reflects downloads up to 16 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Alessandro De Gloria, a Pioneer in Electronic Engineering ApplicationsApplications in Electronics Pervading Industry, Environment and Society10.1007/978-3-031-48121-5_1(3-11)Online publication date: 13-Jan-2024
  • (1994)Exploitation of Fine-grain Parallelism in Logic Languages on Massively Parallel ArchitecturesProceedings of the IFIP WG10.3 Working Conference on Parallel Architectures and Compilation Techniques10.5555/647042.713814(225-234)Online publication date: 24-Aug-1994
  • (1994)Branch prediction for enhancing fine-grained parallelism in PrologProceedings of 1994 International Conference on Parallel and Distributed Systems10.1109/ICPADS.1994.590462(744-751)Online publication date: 1994
  • (1993)An analysis of dynamic scheduling techniques for symbolic applicationsProceedings of the 26th annual international symposium on Microarchitecture10.5555/255235.255284(185-191)Online publication date: 1-Dec-1993
  • (1993)Dynamically scheduled VLIW processorsProceedings of the 26th Annual International Symposium on Microarchitecture10.1109/MICRO.1993.282744(80-92)Online publication date: 1993
  • (1993)PROXIMA: PROlog eXecutIon MAchineIEEE Journal of Solid-State Circuits10.1109/4.21000428:3(362-370)Online publication date: Mar-1993
  • (1992)ASIC and board design of a high performance parallel architectureProceedings Euro ASIC '9210.1109/EUASIC.1992.228047(244-249)Online publication date: 1992

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media