| S.K. Debray, D. Gudeman, and P. Bigot. Detection and Optimization of Suspension-free logic programs. In International Logic Programming Symposium, pages 487-504 MIT Press, Ithaca November 1994. |
....times. In particular the time quoted for transp.pl was 168.5 seconds compared to 1.10 seconds using our analyser. Note that this is not an exact comparison since the times are based on different machines. 7 Related Work Suspension analysis framework The simple and practical framework of [9], though adequate for inferring suspension freeness its primary objective it does not provide a suitable basis for accurately tracing properties like groundness since it abstracts the behaviour of possibly delaying goals in a very conservative way. Even when equipped with a P os domain ....
.... its primary objective it does not provide a suitable basis for accurately tracing properties like groundness since it abstracts the behaviour of possibly delaying goals in a very conservative way. Even when equipped with a P os domain (rather than a traditional mode domain [9]) the analysis cannot infer modes to the precision of our framework. 12 Multiset framework The multiset framework of [17] uses a multiset to record which atoms are definitely delayed and which atoms are possibly delayed. However, in [14] which builds on and improves the method) it is reported ....
S. Debray, D. Gudeman, and P. Bigot. Detection and Optimization of Suspension-free Logic Programs. In ILPS'94, pages 487--504. MIT Press, 1994.
....mode. Program transformations bridge the semantic gaps between the different programming paradigms supported. The methods used for translating programs based on the (Basic) Andorra model to CIAO are described in [BDGH94] The methods used for translating CC languages are an extension of those of [DGB94, Deb93] and are described in [BH95b] 7 3.2 Analysis The CIAO compiler includes both local and global analysis of programs. Local analysis of program clauses is usually very simple but not accurate. Nonetheless, it is sometimes partially useful in some optimizations, as in program ....
....significant loss of accuracy [GMS95] The approach is based on approximating the delayed atoms by a closure operator. A direct method for analysis of CC programs has also been developed and is currently being integrated into the compiler. This method is an extension of previous work of Debray [DGB94, Deb93] It is based on the observation that for certain properties, it is possible to extend existing analysis technology for the underlying fixed computation rule in order to deal with such programs [BH95b] In particular, this idea has been applied using as starting point the original ....
S. Debray, D. Gudeman, and P. Bigot. Detection and Optimization of Suspension-free Logic Programs. In 1994 International Symposium on Logic Programming, pages 487--501. MIT Press, November 1994.
....the analysis of the concurrent constraint programming language AKL is presented. It is based on an abstraction of the operational semantics of AKL. Issues of synchronisation and pruning are not treated. 1 Introduction Analysis works for concurrent logic programming languages have occurred e.g. in [11, 24, 12, 14, 10, 28], all of which relating to flat languages. In the ESPRIT project ParForce we developed a framework for analysis of type and alias in AKL programs [21] The framework presented here is a generalisation of the one we presented in [4] An analysis system for the concurrent constraint language AKL ....
Saumya K. Debray, David Gudeman and Peter Bigot. Detection and Optimization of Suspension-free Logic Programs. In Proceedings of International Logic Programming Symposium, 1994. pages 487--501, MIT Press.
....mode. Program transformations bridge the semantic gaps between the different programming paradigms supported. The methods used for translating programs based on the (Basic) Andorra model to CIAO are described in [BDGH95] The methods used for translating CC languages are an extension of those of [DGB94, Deb93] and are described in [BH95c] 3.2 Analysis The CIAO compiler includes both local and global analysis of programs. Local analysis of program clauses is usually very simple but not accurate. Nonetheless, it is sometimes useful in some optimizations, as in program parallelization [BGH94] ....
....significant loss of accuracy [GMS95] The approach is based on approximating the delayed atoms by a closure operator. A direct method for analysis of CC programs has also been developed and is currently being integrated into the compiler. This method is an extension of previous work of Debray [DGB94, Deb93] It is based on the observation that for certain properties, it is possible to extend existing analysis technology for the underlying fixed computation rule in order to deal with such programs [BH95b] In particular, this idea has been applied using as starting point the original ....
S. Debray, D. Gudeman, and P. Bigot. Detection and Optimization of Suspension-free Logic Programs. In 1994 International Symposium on Logic Programming, pages 487--501. MIT Press, November 1994.
....those of Prolog, CLP(R) and CLP(Q) Program transformations bridge the semantic gaps between the different programming paradigms supported. The methods used for supporting the (Basic) Andorra model are described in [3] The methods used for supporting CC languages are an extension of those of [18, 19] and are described in [5] 2.2 Analysis The compiler includes a number of analysis modules, which can analyze programs over the Herbrand domain or some constraint domains. In addition, analysis of dynamically scheduled programs (concurrent programs or programs with delay declarations [25, 9] is ....
S. Debray, D. Gudeman, and Peter Bigot. Detection and Optimization of Suspension-free Logic Programs. In 1994 International Symposium on Logic Programming, pages 487--501. MIT Press, November 1994.
....conditional information implicit in the when declaration. 3 Operational semantics In this section we recall some basic notions and we define an operational semantics for constraint logic programs with dynamic scheduling. The operational semantics is based on that given in [Marriott et al. 1994; Debray et al. 1994]. A constraint logic program, or program, is a finite set of rules. A rule is of the form H B where H , the head, is an atom and B , the body, is a finite, non empty sequence of literals. We let nil denote the empty sequence. A literal is either an atom or a primitive constraint. An atom has ....
Debray, S., Gudemann, D., and Bigot, P. 1994. Detection and optimization of suspension-free logic programs. In Proc. Eleventh International Logic Programming Symposium, M. Bruynooghe, Ed. The MIT Press, Cambridge, Mass., 487--504.
....here as they do not have a default left to right scheduling but instead the compiler or interpreter is free to choose any scheduling. Thus, program analysis must be correct for all schedulings. In our setting, knowledge of the default scheduling allows much more precise analysis. Debray et al. [8] give a global analysis for logic languages with dynamic scheduling which determines parts of the program in which delay and wakeup can never occur. This allows the compilation of these parts to be optimized. In order to do this, the analyzer uses a very simple model of delay behavior. As soon as ....
S.K. Debray, D. Gudeman, and P. Bigot. Detection and Optimization of Suspension-free logic programs. In International Logic Programming Symposium, pages 487--504 MIT Press, Ithaca November 1994.
....detailed. Other related work has concentrated on detecting non suspension (e.g. 6] or is restricted to the case of some particular delayed conditions (e.g. 1] usually found in functional languages, and the transformations applied do not guarantee that there will be no performance loss. In [4] program segments in which no suspension occurs are identified in order to perform low level compiler optimizations. However, no suspension behaviour optimization or reordering is performed. 2 Programs with Delay A constraint is essentially a conjunction of predefined predicates, such as term ....
....traditionally used with fixed scheduling constraint logic programs can also be performed after transformation. Currently we perform dead code elimination and simplification of built ins. Different analysis frameworks have been recently developed for logic programs with dynamic scheduling (e.g. [7, 4, 3]) In our prototype we use the approach of [3] However, simplification can be performed with any analysis framework which, for a given analysis domain, approximates the initial, delaying and waking contexts for each delaying literal. For reordering, the analyzer needs to provide a description of ....
S. Debray, D. Gudeman, and P. Bigot. Detection and optimization of suspension-free logic programs. Journal of Logic Programming, 29(1--3):171-- 195, October--December 1996.
....since the underestimation assures that the programmer is not bothered with false alarms. Particularly, the authors suggest, such a tool would be useful in the early, tentative stages of protocol specification. Many data dependency analyses for concurrent logic programs, e.g. Debray et al. 1996) [11] assume a fixed scheduling of processes (goals) or are in other 1 The term module used here in a general sense, and not specifically referring to the module system in Erlang. ways too restricted to be used for deadlock analysis of general Erlang programs. Debray (1994) 12] gives a ....
Saumya Debray, David Gudeman, and Peter Bigot. Detection and optimization of suspension-free Logic Programs. Journal of Logic Programming, 29(1--3):171--194, 1996.
....papers cannot be applied to logic programs with dynamic scheduling, since their correctness relies on the fact that the evaluation of negated literals cannot instantiate any variable, while this is not the case for atoms which are delayed. Some recent papers by Marriott et al. 21] Debray et al. [13] and Garcia de la Banda et al. 12] investigate global analysis for logic programs with dynamic scheduling. Debray et al. 13] introduce an analysis for determining parts of the program which are free from delays and wakeups , thus allowing optimizations in the compilation of these parts. The ....
....of negated literals cannot instantiate any variable, while this is not the case for atoms which are delayed. Some recent papers by Marriott et al. 21] Debray et al. 13] and Garcia de la Banda et al. 12] investigate global analysis for logic programs with dynamic scheduling. Debray et al. [13] introduce an analysis for determining parts of the program which are free from delays and wakeups , thus allowing optimizations in the compilation of these parts. The analyzer is not very precise since as soon as one atom may delay the information associated with the variables of that atom is ....
S. Debray, D. Gudemann, and P. Bigot. Detection and optimization of suspension-free logic programs. In M. Bruynooghe, editor, Proc. Eleventh Int'l Logic Programming Symp., pages 487--504. MIT Press, 1994.
....as any auxiliary information, e.g. a guarantee that the value of a variable will be available at a program point, are orthogonal to the subject of this paper. Here we assume only that this information has been obtained and is available for use by the compiler; the interested reader is referred to [15] for a discussion of the dataflow analysis used in our implementation for this purpose. 5 2.2. The Implementation Context The framework in which the work described here has been implemented is jc [19] a translator for a committed choice logic programming language that, in its present ....
....cannot be totally ordered by set inclusion. If the argument at any call site cannot be guaranteed to be defined, e.g. due to possible suspension, the parameter must be assigned a tagged register. An output argument may be returned in an untagged register provided that non suspension analysis [15] has shown that the value will be defined (i.e. not an unbound variable) when the procedure finishes, and type analysis has shown that it will have a type that has an untagged representation. These restrictions embody the necessary conditions for the use of untagged registers in parameter ....
S. K. Debray, D. Gudeman, and P. A. Bigot, "Detection and Optimization of Suspension-free Logic Programs", J. Logic Programming (Special Issue on High Performance Implementations), to appear. (Preliminary version appeared in Proc. 1994 International Symp. on Logic Programming, Nov. 1994, pp. 487--501, MIT Press.)
....frequently executed code. This section describes an algorithm we have developed that has these characteristics and that has been incorporated into a compiler that we have implemented for Janus, a committed choice logic programming language [10] The compiler uses inter procedural dataflow analyses [9] to determine the input and output arguments of each procedure, and identify procedures and variables that must use the default output placement policy (e.g. procedures whose execution can suspend and subsequently be resumed, and variables that may be used as logical variables, i.e. used ....
S. K. Debray, D. Gudeman and P. A. Bigot, "Detection and Optimization of Suspension-free Logic Programs", Journal of Logic Programming (Special Issue on High Performance Implementations), vol. 29 nos. 1--3, Nov. 1996, pp. 171--194.
No context found.
S.K. Debray, D. Gudeman, and P. Bigot. Detection and Optimization of Suspension-free logic programs. In International Logic Programming Symposium, pages 487-504 MIT Press, Ithaca November 1994.
No context found.
S. Debray, D. Gudemann, and P. Bigot. Detection and optimization of suspensionfree logic programs. In M. Bruynooghe, editor, Proc. Eleventh International Logic Programming Symposium, pages 487--504. The MIT Press, 1994.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC