| W. L. Harrison and D. Padua. PARCEL: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp. Proc. of 1988 Int'l. Conf. on Supercomputing 1988. |
....8.2 Parallel Programming 8.2. 1 Automatic Parallelization of Sequential Programs Attempt to parallelize Fortran with additional specifications have not been broadly successful [EB91, PW86] There have also been attempts to parallelize languages such as Scheme and other dialects of Lisp [LH89, HP88] There are several algorithms for generation of efficient (optimal or near optimal) parallel code from straight line code [MRK88] There are a number of algorithms for fast parallel evaluation of expressions [KR90] These algorithms can, in some cases, be applied to the sequential code segments ....
Luddy Harrison and David A. Padua. Parcel: Project for the automatic restructuring and concurrent evaluation of Lisp. In Proceedings of the 1988 International Conference on Supercomputing,, pages 527-- 538, 1988.
....estimation is a load insensitive technique that only creates parallel threads that are guaranteed to meet or exceed some granularity criterion. Therefore, dge is orthogonal to and complements existing load based inlining and task creation methods. Harrison s parallel Lisp system, PARCEL [15], employs a non standard list representation that dynamically maintains information about a list s length. PARCEL uses length information to implement lists contiguously in memory, but not for making parallelization or load balancing decisions. Static time complexity analysis has been studied ....
W. L. Harrison and D. A. Padua. PARCEL: Project for the automatic restructuring and concurrent evaluation of lisp. In International Conference on Supercomputing, pages 527--538, July 1988.
....Phone: 908) 582 4628 To Appear in Proceedings of 1996 Parallel Architectures and Compilation Techniques. to correctly synchronize parallel access to shared state; parallelizing compilers, moreover, must statically infer structure sharing and produce a safe evaluation and synchronization schedule [7, 17]. The difficulty lies in the dynamic nature of irregular computations shared structure appears (and disappears) dynamically. Hence, the available parallelism, and its attendant synchronization requirements, necessarily vary during program execution. This paper describes the design and ....
....program procedures that destructively manipulate directed acyclic graphs (DAGs) The dr technique dynamically detects and dynamically schedules potentially conflicting DAG modifications; it preserves the program s sequential semantics by resolving conflicts at run time. Static pointer analyses [4, 14, 9, 17, 7, 28, 15] can not provide precise parallelization information in the presence of dynamic structure sharing such analyses must conservatively assume that if sharing can occur, then it always occurs. Only a dynamic approach can parallelize programs that may share structure when in fact they do not ....
[Article contains additional citation context not shown here]
W. L. Harrison and D. A. Padua. PARCEL: Project for the automatic restructuring and concurrent evaluation of lisp. In International Conference on Supercomputing, pages 527--538, July 1988.
....to read a vectorized tree even top down, since inspecting a given node requires inspecting all its right neighbors as well as its ancestors. 7 Related Work and Conclusions The idea of using compact representation for lists is old. It can be traced back to the cdr coding schemes for Lisp [5, 8, 6]. Under these schemes, lists are represented as linked vectors of fixed size. Consing an element to a list is done by filling in the first vector in the vector list, if there is space to do so, or by allocating a new vector to fill. All these methods rely on extra cdr coding bits to identify how ....
L. Harrison and D. Padua. PARCEL: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp. In ACM International Conference on Supercomputing, pp 527--538, June 1988.
....Constructs Recursion is seldom used today in numerical programs, partly because it is not part of the Fortran 77 standard. However, recursion is the most natural way to express some algorithms, especially non numerical algorithms. We describe in this section a technique developed by Harrison [132], called recursion splitting which, although it was originally developed to parallelize Lisp programs, can be applied to programs in other languages including Fortran 90. Assume a function of the form: function x(P ) if q(P ) then return(r(P ) Y = x(f(P ) return g(P; Y ) end Any recursive ....
W. Ludwell Harrison and David Padua. PARCEL: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp. Proceedings of 1988 Int'l. Conf. on Supercomputing, St. Malo, France, pages 527--538, July 1988.
....technology is much less developed. While research for the discovery of better SAC algorithms is continuing, improvements in speed and usability are expected as good compilers for the underlying languages become available [153] 154] examples are the parallelizing compiler for sequential Scheme [96]; multiprocessing extensions for Lisp [88] 199] the effort of [75] for constructing a compilation driven parallel REDUCE system for loosely coupled, distributed architectures. There have also been efforts to provide implementations of Lisp based systems such as REDUCE in C by building a ....
W. L. Harrison III and D. A. Padua. PARCEL: Project for the automatic restructuring and concurrent evaluation of Lisp. In Proc. 1988 Int'l. Conf. Supercomput., pages 527--538, ACM Press, New York, 1988.
....which we will not support with this version of the compiler. L, U, P] lu(A) y = L n (P b) x = U n y; Figure 3: MATLAB code segment for LU decomposition mation can be easily propagated inside the functions. This approach, however, requires special handling for the case of recursive functions[16]. The third approach is to apply interprocedural analysis. This would overcome the code explosion that could occur with inlining and will make it possible to deal with recursive functions. However, it comes at the expense of a more complex implementation. We will implement a mix of the three ....
Harrison, III, W. L., and Padua, D. PARCEL: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp. In Proceedings of 1988 Int'l. Conf. on Supercomputing, St. Malo, France (July 1988), pp. 527--538.
....on non numerical problems. Therefore, some effort has been devoted to the implementation and study of the behavior of parallel symbolic programs and more work in this area is planned. To support this effort we are developing parallelizing compilers for symbolic computing languages such as LISP [13] and PROLOG, as well as for C. Our Fortran translation system, which is shown in Figure 2, consists of two components. The back end compiler, a modified version of the Alliant Fortran compiler, generates machine code for Cedar from programs written in Cedar Fortran, a parallel programming dialect ....
W. Ludwell Harrison, III and David Padua. PARCEL: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp. Proceedings of 1988 Int'l. Conf. on Supercomputing, St. Malo, France, pages 527--538, July 1988.
No context found.
W. L. Harrison and D. Padua. PARCEL: Project for the Automatic Restructuring and Concurrent Evaluation of Lisp. Proc. of 1988 Int'l. Conf. on Supercomputing 1988.
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