3 resultados para program memory tracing
em Universidad Politécnica de Madrid
Resumo:
Modeling the evolution of the state of program memory during program execution is critical to many parallehzation techniques. Current memory analysis techniques either provide very accurate information but run prohibitively slowly or produce very conservative results. An approach based on abstract interpretation is presented for analyzing programs at compile time, which can accurately determine many important program properties such as aliasing, logical data structures and shape. These properties are known to be critical for transforming a single threaded program into a versión that can be run on múltiple execution units in parallel. The analysis is shown to be of polynomial complexity in the size of the memory heap. Experimental results for benchmarks in the Jolden suite are given. These results show that in practice the analysis method is efflcient and is capable of accurately determining shape information in programs that créate and manipúlate complex data structures.
Resumo:
Finding useful sharing information between instances in object- oriented programs has been recently the focus of much research. The applications of such static analysis are multiple: by knowing which variables share in memory we can apply conventional compiler optimizations, find coarse-grained parallelism opportunities, or, more importantly,erify certain correctness aspects of programs even in the absence of annotations In this paper we introduce a framework for deriving precise sharing information based on abstract interpretation for a Java-like language. Our analysis achieves precision in various ways. The analysis is multivariant, which allows separating different contexts. We propose a combined Set Sharing + Nullity + Classes domain which captures which instances share and which ones do not or are definitively null, and which uses the classes to refine the static information when inheritance is present. Carrying the domains in a combined way facilitates the interaction among the domains in the presence of mutivariance in the analysis. We show that both the set sharing part of the domain as well as the combined domain provide more accurate information than previous work based on pair sharing domains, at reasonable cost.
Resumo:
The program PECET (Boundary Element Program in Three-Dimensional Elasticity) is presented in this paper. This program, written in FORTRAN V and implemen ted on a UNIVAC 1100,has more than 10,000 sentences and 96 routines and has a lot of capabilities which will be explained in more detail. The object of the program is the analysis of 3-D piecewise heterogeneous elastic domains, using a subregionalization process and 3-D parabolic isopara, metric boundary elements. The program uses special data base management which will be described below, and the modularity followed to write it gives a great flexibility to the package. The Method of Analysis includes an adaptive integration process, an original treatment of boundary conditions, a complete treatment of body forces, the utilization of a Modified Conjugate Gradient Method of solution and an original process of storage which makes it possible to save a lot of memory.