Skip to main content

Optimization scheme on execution of logic program in a dataflow environment

  • Conference paper
  • First Online:
Parallel Computing Technologies (PaCT 1995)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 964))

Included in the following conference series:

  • 116 Accesses

Abstract

We have developed a technique that maps logic programs (database queries) onto a dataflow graph to support static scheduling in a multiprocessor environment [8]. A dataflow graph explicitly shows the execution paths, data dependence, and synchronization points in a query. The scheme attempts to properly group fine grain operations — select and join — into coarser grains as a means to exploit parallelism while minimizing the communication costs. This leads to a higher hardware utilization and performance.

In this paper, we expand the scope of our scheme by using a set of heuristic rules to assign processes to available processors more efficiently. This is made possible by analyzing the probability of success of each branch in the logic program. In a logic program, the early scheduling and execution of some branches with higher probability of failure leads to a higher possibility to eliminate many other branches. On the other hand, early execution of some branches with higher probability of success can lead to a higher hardware utilization. The extended scheme has been simulated, and its performance has been compared against the original model and the traditional parallel execution paradigm of the logic program.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Anurag Acharya, Milind Tambe, and Anoop Gupta, “Implementation of Production Systems on Message-Passing Computers, ” IEEE Transactions on Parallel and Distributed Systems, vol.3, No.4, July, '92, pp. 477–487.

    Google Scholar 

  2. Jonas Barklund, and Hakan Millroth, “Integration Complex Data Structures in Prolog, ” Inter'l Symp. on Logic Programming, '87, pp. 415–425.

    Google Scholar 

  3. Johann Eder, “Logic and Databases,” International Summer School, '92, pp. 95–103.

    Google Scholar 

  4. Y. Freundlich, “Knowledge Bases and Databases,” IEEE Computer, vol.23, no.11, Nov. '90, pp. 51–57.

    Google Scholar 

  5. Sumit Ganguly, Waqar Hasan, and Ravi Krishnamurthy, “Query Optimization for Parallel Execution,” ACM SIGMOD, '92, pp. 9–18.

    Google Scholar 

  6. G. Gupta and V. S. Costa, “AND-OR Parallelism in Full Prolog with Paged Binding Arrays,” Proc. of PARLE, '92, pp. 617–632.

    Google Scholar 

  7. Gitu Jain, B. Ramkuman, and Jon G. Kuhl, “A Control Strategy Based on Heuristic Techniques for the Parallel Execution of Logic Programs,” 8th Inter'l Conf. on Parallel Processing Symposium, '94, pp. 311–315.

    Google Scholar 

  8. Byung-Uk Jun, A.R. Hurson, and B. Shirazi, “Handling Logic Programs in Multithreaded Dataflow Environment,” Second Biennial European Joint Conf. on Engineering Systems Design and Analysis, '94, pp. 533–540.

    Google Scholar 

  9. Rosana S.G. Lanzelotte, Patrick Valduriez, and Mohamed Zait, “Optimization of Object-Oriented Recursive Queries using Cost-Controlled Strategies,” ACM SIGMOD, '92, pp. 256–265.

    Google Scholar 

  10. B. Lee, A.R. Hurson, and T.Y. Feng, “A Vertically Layered Allocation Scheme for Data Flow Systems,” Journal of Parallel and Distributed Computing, vol.11, '91, pp. 175–187.

    Google Scholar 

  11. Sang-goo Lee, L.J. Henschen, and G.Z. Qadah, “Semantic Query Reformulation in Deductive Databases,” 7th Inter'l Conf. on Data Engineering, '91, pp. 232–239.

    Google Scholar 

  12. B. Lee, and A.R. Hurson, “Dataflow Architectures and Multithreading,” IEEE Computer, vol.27, no.8, '94, pp. 27–39.

    Google Scholar 

  13. M.V. Mannino, P. Chu, and T. Sager, “Statistical Profile Estimation in Database Systems,” ACM Computing Surveys, vol.20, no.3, Sep. '88, pp. 191–221.

    Google Scholar 

  14. Dan Moldovan, Wing Lee, and Changhwa Lin, “SNAP: A Marker-Propagation Architecture for Knowledge Processing,” IEEE Transactions on Parallel and Distributed Systems, vol.3, No.4, July, '92, pp. 397–410.

    Google Scholar 

  15. C.D. Polychronopoulos and U. Banerjee, “Processor Allocation for Horizontal and Vertical Parallelism and Related Speedup Bounds,” IEEE transactions on Computer, vol. C-36, no.4, Apr. '87, pp. 410–420.

    Google Scholar 

  16. J.A. Robinson, “A Machine-Oriented Logic based on the Resolution Principle,” Journal of the Association for Computing Machinery, '80, no.12, pp. 23–41.

    Google Scholar 

  17. S. Taylor, et al., “Logic programming using parallel associative operations,” Inter'l Symp. on Logic Programming, '84, pp. 58–68.

    Google Scholar 

  18. Jeffrey D. Ullman, Principle of Database and Knowledge Base Systems, vol.2, Computer Science Press, 1989.

    Google Scholar 

  19. M. J. Wise, “Message-Brokers and Communicating Prolog Processes,” 4th Inter'l Conf. on Parallel Architectures and Languages in Europe, '92, pp. 535–549.

    Google Scholar 

  20. Z. Yuhan, T. Honglei, and X. Li, “AND/OR Parallel Execution of Logic Programs: Exploiting Dependent AND-parallelism,” ACM SIGPLAN Notices, vol.28, no.5, '93, pp. 19–28.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Victor Malyshkin

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hurson, A.R., Jun, BU. (1995). Optimization scheme on execution of logic program in a dataflow environment. In: Malyshkin, V. (eds) Parallel Computing Technologies. PaCT 1995. Lecture Notes in Computer Science, vol 964. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60222-4_110

Download citation

  • DOI: https://doi.org/10.1007/3-540-60222-4_110

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60222-4

  • Online ISBN: 978-3-540-44754-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics