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

Task granularity analysis in logic programs

Published: 01 June 1990 Publication History
  • Get Citation Alerts
  • Abstract

    While logic programming languages offer a great deal of scope for parallelism, there is usually some overhead associated with the execution of goals in parallel because of the work involved in task creation and scheduling. In practice, therefore, the “granularity” of a goal, i.e. an estimate of the work available under it, should be taken into account when deciding whether or not to execute a goal concurrently as a separate task. This paper describes a method for estimating the granularity of a goal at compile time. The runtime overhead associated with our approach is usually quite small, and the performance improvements resulting from the incorporation of grainsize control can be quite good. This is shown by means of experimental results.

    References

    [1]
    B. Bjerner and S. HolmstrSm, "A Compositional Approach to Time Analysis of First Order Lazy Functional Programs," Proc. 1989 A CM Functional Programming Languages and Computer Architecture, pp. 157-165.
    [2]
    J. Chang, A. M. Despain and D. DeGroot, "AND- PaxMlelism of Logic Programs Based on A Static Data Dependency Analysis," in Digest of Papers, Compcon 85, IEEE Computer Society, Feb. 1985.
    [3]
    K. Clark and S. Gregory, "PARLOG: Parallel Programming in Logic," A CM Transactions on Programming Languages and Systems 8, 1 (Jan. 1986), pp. 1-49.
    [4]
    J. Cohen and J. Katcoff, "Symbolic Solution of Finite-Difference Equations," A CM Transactions on Mathematical Software 3, 3 (Sep. 1977), pp. 261-271.
    [5]
    S. K. Debray, "Static Inference of Modes and Data Dependencies in Logic Programs," A CM Transactions on Programming Languages and Systems 11, 3 (July 1989), pp. 419-450.
    [6]
    M. V. Hermenegildo, An Abstract Machine Based Execution Model for Computer Architecture Design and Efficient Implementation of Logic Programs in Parallel, PhD thesis, The University of Texas at Austin, 1986.
    [7]
    M. Hermenegildo and F. Rossi., "On the Correctness and Efficiency of Independent And- Parallelism in Logic Programs," 1989 North American Conference on Logic Programming, MIT Press, October 1989, pp. 369-389.
    [8]
    T. Hickey and J. Cohen, "Automating Program Analysis," J. A CM 35, i (Jan. 1988), pp. 185-220.
    [9]
    B. Goldberg and P. Hudak, "Serial Combinators: Optimal Grains of Parallelism," Proc. Functional Programming Languages and Computer Architeciure, Nancy, France, Aug. 1985. Springer-Verlag LNCS vol. 201, pp. 382-399.
    [10]
    J. Ivie, "Some MACSYMA Programs for Solving Recurrence Relations," A CM Transactions on Mathematical Software 4, 1 (March 1978), pp. 24- 33.
    [11]
    L.V. Kale, Parallel Architectures for Problem Solving, PhD Thesis, SUNY, Stony Brook, 1985.
    [12]
    L. V. Kale, "Completeness and Full Parallelism of Parallel Logic Programming Schemes," Proc. Fourth IEEE Symposium on Logic Programming, San Francisco, California, iEEE, 1987, pp. 125- 133.
    [13]
    S. Kaplan, "Algorithmic Complexity of Logic Programs," Logic Programming, Proc. Fifth International Conference and Symposium, Seattle, Washington, 1988, pp. 780-793.
    [14]
    D. Le Metayer, "ACE' An Automatic Complexity Evaluator," A CM Transactions on Programming Languages and Systems 10, 2 (April 1988), pp. 248- 266.
    [15]
    H. Levy and F. Lessman, Finite Difference Equations, Sir Isaac Pitman gt Sons, London, 1959.
    [16]
    C. S. Mellish, "Some Global Optimizations for a Prolog Compiler," J. Logic Programming 2, 1 (April 1985), pp. 43-66.
    [17]
    F. A. Rabhi and G. A. Maason, "Using Complexity Functions to Control Parallelism in Functional Programs," Research Report CS-90-1, Department of Computer Science, University of Sheffield, England, Jan. 1990.
    [18]
    B. Ramkumar and L. V. Kale, "Compiled Execution of the Reduce-OR Process Model on Multiprocessors," 1989 North American Conference on Logic Programming, MIT Press, October 1989, pp. 313-331.
    [19]
    M. Rosendahl, "Automatic Complexity Analysis," Proc. A CM Conference on Functional Programruing Languages and Computer Architecture, 1989, pp. 144-156.
    [20]
    V. Sarkar, Partitioning and Scheduling Parallel Programs for Multiprocessors, MIT Press, Cambridge, Massachusetts, 1989.
    [21]
    E. Y. Shapiro, "A Subset of Concurrent Prolog and its Interpreter," Technical Report CS83-06, Department of Applied Mathematics, Weizmann Institute of Science, Israel, Feb. 1983.
    [22]
    E. Tick, "Compile-Time Granularity Analysis for Parallel Logic Programming Languages," Internstional Conference on Fifth Generation Computer Systems, Tokyo, Japan, November 1988, pp. 994- 1000.
    [23]
    A. Tucker, Applied Combinatorics, John Wiley & Sons, New York, 1985.
    [24]
    K. Ueda, Guarded Horn Clauses, D. Eng. Thesis, University of Tokyo, 1986.
    [25]
    A. Van Gelder, "Deriving Relations Among Argument Sizes in Logic Programs," Unpublished memorandum. Department of Computer Science, Stanford University, Stanford, Califonia, 1986.
    [26]
    P. Wadler, "Strictness Analysis Aids Time Analysis,'' Proc. Fifteenth A CM Symposium on Principles of Programming Languages, 1988, pp. 119-132.
    [27]
    B. Wegbreit, "Mechanical Program Analysis," Communications of the A CM 18, 9 (Sep. 1975), pp. 528-539.

    Cited By

    View all
    • (2021)Regular Path Clauses and Their Application in Solving LoopsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.344.3344(22-35)Online publication date: 13-Sep-2021
    • (2021)Analysis and Transformation of Constrained Horn Clauses for Program VerificationTheory and Practice of Logic Programming10.1017/S147106842100021122:6(974-1042)Online publication date: 15-Nov-2021
    • (2020)A General Framework for Static Cost Analysis of Parallel Logic ProgramsLogic-Based Program Synthesis and Transformation10.1007/978-3-030-45260-5_2(19-35)Online publication date: 22-Apr-2020
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 25, Issue 6
    Jun. 1990
    343 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/93548
    Issue’s Table of Contents
    • cover image ACM Conferences
      PLDI '90: Proceedings of the ACM SIGPLAN 1990 conference on Programming language design and implementation
      June 1990
      351 pages
      ISBN:0897913647
      DOI:10.1145/93542
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 June 1990
    Published in SIGPLAN Volume 25, Issue 6

    Check for updates

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)45
    • Downloads (Last 6 weeks)7
    Reflects downloads up to 27 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2021)Regular Path Clauses and Their Application in Solving LoopsElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.344.3344(22-35)Online publication date: 13-Sep-2021
    • (2021)Analysis and Transformation of Constrained Horn Clauses for Program VerificationTheory and Practice of Logic Programming10.1017/S147106842100021122:6(974-1042)Online publication date: 15-Nov-2021
    • (2020)A General Framework for Static Cost Analysis of Parallel Logic ProgramsLogic-Based Program Synthesis and Transformation10.1007/978-3-030-45260-5_2(19-35)Online publication date: 22-Apr-2020
    • (2018)Inferring Energy Bounds via Static Program Analysis and Evolutionary Modeling of Basic BlocksLogic-Based Program Synthesis and Transformation10.1007/978-3-319-94460-9_4(54-72)Online publication date: 10-Jul-2018
    • (2017)Energy Consumption Analysis and Verification by Transformation into Horn Clauses and Abstract InterpretationElectronic Proceedings in Theoretical Computer Science10.4204/EPTCS.253.2253(4-6)Online publication date: 23-Aug-2017
    • (2016)A Transformational Approach to Parametric Accumulated-Cost Static ProfilingFunctional and Logic Programming10.1007/978-3-319-29604-3_11(163-180)Online publication date: 21-Feb-2016
    • (2015)Inferring Parametric Energy Consumption Functions at Different Software Levels4th International Workshop on Foundational and Practical Aspects of Resource Analysis - Volume 996410.1007/978-3-319-46559-3_5(81-100)Online publication date: 11-Apr-2015
    • (2014)Energy Consumption Analysis of Programs Based on XMOS ISA-Level ModelsLogic-Based Program Synthesis and Transformation10.1007/978-3-319-14125-1_5(72-90)Online publication date: 11-Dec-2014
    • (2012)A Fuzzy Approach to Resource Aware Automatic ParallelizationComputational Intelligence10.1007/978-3-642-27534-0_15(229-245)Online publication date: 2012
    • (2010)Granularity-Aware Work-Stealing for Computationally-Uniform GridsProceedings of the 2010 10th IEEE/ACM International Conference on Cluster, Cloud and Grid Computing10.1109/CCGRID.2010.49(123-134)Online publication date: 17-May-2010
    • Show More Cited By

    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