Abstract
Effective static analyses have been proposed which infer bounds on the number of resolutions. These have the advantage of being independent from the platform on which the programs are executed and have been shown to be useful in a number of applications, such as granularity control in parallel execution. On the other hand, in distributed computation scenarios where platforms with different capabilities come into play, it is necessary to express costs in metrics that include the characteristics of the platform. In particular, it is specially interesting to be able to infer upper and lower bounds on actual execution times. With this objective in mind, we propose an approach which combines compile-time analysis for cost bounds with a one-time profiling of a given platform in order to determine the values of certain parameters for that platform. These parameters calibrate a cost model which, from then on, is able to compute statically time bound functions for procedures and to predict with a significant degree of accuracy the execution times of such procedures in that concrete platform. The approach has been implemented and integrated in the CiaoPP system.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Brassel, B., Hanus, M., Huch, F., Silva, J., Vidal, G.: Run-time profiling of functional logic programs. In: Etalle, S. (ed.) LOPSTR 2004. LNCS, vol. 3573, pp. 182–197. Springer, Heidelberg (2005)
Craig, S.J., Leuschel, M.: Self-tuning resource aware specialisation for Prolog. In: Proc. of PPDP 2005, pp. 23–34. ACM Press, New York (2005)
Debray, S.K.: Profiling prolog programs. Software Practice and Experience 18(9), 821–839 (1983)
Debray, S.K., Lin, N.W.: Cost analysis of logic programs. ACM Transactions on Programming Languages and Systems 15(5), 826–875 (1993)
Debray, S.K., Lin, N.-W., Hermenegildo, M.: Task Granularity Analysis in Logic Programs. In: Proc. of the 1990 ACM Conf. on Programming Language Design and Implementation, pp. 174–188. ACM Press, New York (1990)
Debray, S.K., López-García, P., Hermenegildo, M., Lin, N.-W.: Lower Bound Cost Estimation for Logic Programs. In: 1997 International Logic Programming Symposium, pp. 291–305. MIT Press, Cambridge (1997)
Ducassé, M.: Opium: An extendable trace analyzer for prolog. J. Log. Program. 39(1–3), 177–223 (1999)
Hermenegildo, M., Albert, E., López-García, P., Puebla, G.: Abstraction Carrying Code and Resource-Awareness. In: Proc. of PPDP 2005, ACM Press, New York (2005)
Hermenegildo, M., et al.: Integrated Program Debugging, Verification, and Optimization Using Abstract Interpretation (and The Ciao System Preprocessor). Science of Computer Programming 58(1–2), 115–140 (2005)
Householder, A.S.: Unitary Triangularization of a Nonsymmetric Matrix. Journal ACM 5(4), 339–342 (1958)
López-García, P.: Non-failure Analysis and Granularity Control in Parallel Execution of Logic Programs. PhD thesis, Universidad Politécnica de Madrid (UPM), Facultad Informatica UPM, 28660-Boadilla del Monte, Madrid-Spain (June 2000)
López-García, P., Hermenegildo, M., Debray, S.K.: A Methodology for Granularity Based Control of Parallelism in Logic Programs. J. of Symbolic Computation, Special Issue on Parallel Symbolic Computation 22, 715–734 (1996)
Jarvis, S.A., Morgan, R.G.: Profiling large-scale lazy functional programs. Journal of Functional Programing 8(3), 201–237 (1998)
Sansom, P.M., Peyton Jones, S.L.: Formally based profiling for higher-order functional languages. ACM Transactions on Programming Languages and Systems 19(2), 334–385 (1997)
Wackerly, D., Mendenhall, W., Scheaffer, R.: Mathematical Statistics With Applications. 5th edn. P.W.S. Publishers (1995)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mera, E., López-García, P., Puebla, G., Carro, M., Hermenegildo, M.V. (2006). Combining Static Analysis and Profiling for Estimating Execution Times. In: Hanus, M. (eds) Practical Aspects of Declarative Languages. PADL 2007. Lecture Notes in Computer Science, vol 4354. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69611-7_9
Download citation
DOI: https://doi.org/10.1007/978-3-540-69611-7_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69608-7
Online ISBN: 978-3-540-69611-7
eBook Packages: Computer ScienceComputer Science (R0)