X10 is a modern object-oriented programming language designed for high performance, high productivity programming of parallel and multi-core computer systems. Compared to the lower-level thread-based concurrency model...
详细信息
ISBN:
(纸本)9781595936028
X10 is a modern object-oriented programming language designed for high performance, high productivity programming of parallel and multi-core computer systems. Compared to the lower-level thread-based concurrency model in the Java (TM) language, X10 has higher-level concurrency constructs such as async, atomic and finish built into the language to simplify creation, analysis and optimization of parallelprograms. In this paper, we introduce a new algorithm for May-Happen-in-parallel (MHP) analysis of X10 programs. The analysis algorithm is based on simple path traversals in the program Structure Tree, and does not rely on pointer alias analysis of thread objects as in MHP analysis for Java programs. We introduce a more precise definition of the MHP relation than in past work by adding condition vectors that identify execution instances for which the MHP relation holds, instead of just returning a single true/false value for all pairs of executing instances. Further, MHP analysis is refined in our approach by using the observation that two statement instances which occur in atomic sections that execute at the same X10 place must have MHP = false. We expect that our MHP analysis algorithm will be applicable to any language that adopts the core concepts of places, async, finish, and atomic sections from the X10 programming model. We also believe that this approach offers the best of two worlds to programmers and parallelprogramming tools - higher-level abstractions of concurrency coupled with simple and efficient analysis algorithms.
In this paper we present a novel approach, based on the integration of static programanalysis and simulation techniques, for the performance prediction of message passing programs. PS, a simulator of PVM applications...
详细信息
In this paper we present a novel approach, based on the integration of static programanalysis and simulation techniques, for the performance prediction of message passing programs. PS, a simulator of PVM applications developed in the last years by our research group, is fed with traces collected by executing the parallelprogram to be analyzed in quasi-concurrent mode on a single workstation. Since this process is typically a non negligible part of the simulation complexity, we have devised a technique based on static analysis and code restructuring for significantly speeding up the trace generation. We show how, by statically analyzing and restructuring the program, it is possible to obtain a simplified code (shrinked code) to be run for collecting a reduced version of the traces.
We present a nevi method to determine whether a Convex region contains any integer points, The method is designed for array subscript analysis in parallelprograms. The general problem is whether a system of linear eq...
详细信息
We present a nevi method to determine whether a Convex region contains any integer points, The method is designed for array subscript analysis in parallelprograms. The general problem is whether a system of linear equalities and inequalities has an integer solution,A set of known techniques is used to transform the problem to that of finding whether a convex region contains any integer points. The main result of the paper is a set of new search procedures that identify an integer solution in a convex region, or prove that no integer solutions exist. They are based on the geometrical properties of convex regions that are not empty, but also do not contain any integer points. The results contribute to exact and efficient dependence and synchronization analysis of parallelprograms.
暂无评论