18 citations found. Retrieving documents...
D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Prin. of Prog. Lang. (PoPL), pages 98--106, San Diego, CA, January 1998.

 Home/Search   Document Details and Download   Summary   Related Articles   Check  

This paper is cited in the following contexts:
A Unified Framework for Schedule and Storage Optimization - Thies, al. (2001)   (9 citations)  (Correct)

....gap between clock speed and memory latency, and with modern memory systems becoming increasingly hierarchical, the amount of storage space required by a program can have a drastic e ect on its performance. Nonetheless, parallelizing compilers often employ varying degrees of array expansion [9, 5, 1] to eliminate elementlevel anti and output dependencies, thereby adding large amounts of storage that mayormay not be justi ed by the resulting gains in parallelism. #### ################# ######### #### ########### ######## ##### # ####### ########### ######### ## #### ##### ###### ## ### ....

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In Principles of Programming Languages, pages 98-106, San Diego, CA, Jan. 1998.


A Unified Framework for Schedule and Storage Optimization - Thies (2002)   (9 citations)  (Correct)

....layout, then the overwriting would cause iteration (i; j) to read the value written by (i 1; j 2) instead of (i; j 2) the anti dependence would have been violated. Thus, it is for the purpose of exposing parallelism that many compilers expand arrays in their internal representation of programs [10, 1]. However, expansion comes at a cost, as well, since larger data structures can ruin performance if they cause an 9 over ow of the register set, cache, or DRAM. Ideally, one would like to consider all possible storage mappings and instruction schedules and to choose the combination that results ....

D. Barthou, A. Cohen, and J. Collard. Maximal static expansion. In Principles of Programming Languages, pages 98-106, San Diego, CA, Jan. 1998.


A Unified Framework for Schedule and Storage Optimization - Thies, Vivien, Sheldon.. (2001)   (9 citations)  (Correct)

....gap between clock speed and memory latency, and with modern memory systems becoming increasingly hierarchical, the amount of storage space required by a program can have a drastic e ect on its performance. Nonetheless, parallelizing compilers often employ varying degrees of array expansion [9, 5, 1] to eliminate elementlevel anti and output dependencies, thereby adding large amounts of storage that may or may not be justi ed by the resulting gains in parallelism. This document is MIT LCS Technical Memo LCS TM 613, November 2000. A similar document was submitted to PLDI 2001. Please do ....

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In Principles of Programming Languages, pages 98-106, San Diego, CA, Jan. 1998.


A Unified Framework for Schedule and Storage Optimization - Thies, Vivien, Sheldon.. (2001)   (9 citations)  (Correct)

....2001 ACM 0 89791 88 6 97 05. 5.00. ory latency, and with modern memory systems becoming increasingly hierarchical, the amount of storage space required by a program can have a drastic e ect on its performance. Nonetheless, parallelizing compilers often employ varying degrees of array expansion [9, 5, 1] to eliminate element level anti and output dependences, thereby adding large amounts of storage that may or may not be justi ed by the resulting gains in parallelism. Thus, compilers must be able to analyze the tradeo s between parallelism and storage requirements in order to arrive at an ecient ....

D. Barthou, A. Cohen, and J. Collard. Maximal static expansion. In Principles of Programming Languages, pages 98-106, San Diego, CA, Jan. 1998.


Schedule-Independent Storage Mapping for Loops - Strout, Carter, Ferrante, Simon (1998)   (12 citations)  (Correct)

....Interleaved Tiled OV Mapped Interleaved OV Mapped Figure 10: 5 point stencil on the Ultra 2 tion. Array privatization [24, 20] creates separate, per processor storage in a parallel context. In our work, storage expansion is performed on a per iteration basis for better locality. The work in [4] creates a maximal expansion of storage that does not require OE functions, trading off parallelism for memory usage. The goal of our work is data locality. The work in [17] introduces an Array SSA form that keeps track of values on an element wise basis. Both of these latter works may be useful ....

Denis Barthou, Albert Cohen, and Jean-Fran¸cois Collard. Maximal static expansion. In Principles of Programming Languages, January 1998.


Maximal Static Expansion - Barthou, Cohen, Collard (2000)   (9 citations)  Self-citation (Barthou Cohen Collard)   (Correct)

No context found.

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Prin. of Prog. Lang. (PoPL), pages 98--106, San Diego, CA, January 1998.


Parallelization via Constrained Storage Mapping Optimization - Albert Cohen Prism (1999)   (7 citations)  Self-citation (Cohen)   (Correct)

No context found.

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Principles of Programming Languages (PoPL), pages 98--106, San Diego, CA, January 1998.


Applications of Storage Mapping Optimization to Register.. - Carribault, Cohen (2004)   Self-citation (Cohen)   (Correct)

No context found.

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In 25


The Advantages of Instance-wise Reaching Definition Analyses in.. - Collard (1998)   Self-citation (Collard)   (Correct)

....were equal, but are not the same any longer in the transformed program. Array SSA form is defined as: S p 6= S q ) M The Array SA form is defined as follows: S p 6= S q w p 6= w q ) M For the sake of comparison, we also define Array Privatization and Maximal Static Expansion [5] in the same framework. Array Privatization is defined as: 8S p 2 I : 8w p 2 D(S p ) S q 2 I; w q 2 D(S q ) hS p ; w p i 2 RD(hS q ; w q i) w q = w p ) Gamma 8w p ; w p 2 D(S p ) M (hS p ; w p i) Delta stating that the data structure written by S p are expanded if all ....

....for compiler writers: When a useless OE function has been inserted in a program, we know what to blame: The reaching definition analysis. The program may not be converted to single assignment, perhaps because OE and functions are considered too expensive. A maximal static extension [5] may be preferred instead, on top of the reaching definition analysis. Notice that the work by Knobe and Sarkar is, in our mind, complementary, since they prefer a robust safety net to more elaborate methods. How to use an instance wise reaching definition analysis to improve array SSA has been ....

[Article contains additional citation context not shown here]

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Principles of Programming Languages (PoPL), pages 98--106, San Diego, CA, January 1998.


Parallelization via Constrained Storage Mapping Optimization - Cohen (1999)   (7 citations)  Self-citation (Cohen)   (Correct)

....in the run time computation of OE functions, especially for non scalar data structures distributed across processors. In our framework, moderation is achieved from two complementary directions: ffl Adding constraints to limit memory expansion, like static expansion avoiding OE functions [1], privatization [17, 14, 6] or array static single assignment [12] All these techniques allow partial removal of memory based dependences, but may extract less parallelism than conversion to single assignment form. ffl Applying storage mapping optimization techniques [4] Some of these are ....

....of real processors is likely to be less than 100, but single assignment form extracted two parallel loops involving m processors The intuition is that we uselessly spilled memory and run time overhead. One would prefer a pragmatic expansion scheme, such as maximal static expansion (MSE) [1], or privatization [17, 14, 6] along the outer loop. Choosing static expansion has the benefit that no OE function is necessary any more. In our case, the result is that x can be safely expanded along outermost and innermost loops, but expansion along the for j loop is forbidden it requires a ....

[Article contains additional citation context not shown here]

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Principles of Programming Languages (PoPL), pages 98--106, San Diego, CA, January 1998.


Maximal Static Expansion - Barthou, Cohen, Collard (1998)   (9 citations)  Self-citation (Barthou Cohen Collard)   (Correct)

....those of your favorite reaching definition analysis. We then present an algorithm to construct the maximal static expansion for programs with arrays and scalars only, but where subscripts and control structures are unrestricted. This paper actually extends our previous work on static expansion [3], a detailed comparison is proposed in Section 9. Published in the International Journal of Parallel Programming, 28(3) 213 243, June 2000. Copyright c fl 2000 Plenum Publishing Corporation. 1 The paper is organized as follows: Section 2 studies motivating examples showing what we want to ....

....much memory as f e . More precisely: Definition 3 (Expansion) For a given execution e 2 E, a storage mapping f 0 e is called memory expansion of f e if 8v; w 2 W : f 0 e (v) f 0 e (w) f e (v) f e (w) 3. 2 Introducing Static Expansion Static expansion has first been introduced in [3]. The idea is to avoid dynamic restoration of the data flow. Let us consider two writes v and w belonging to the same set of reaching definitions of some read u. If they both write in the same memory location (f e (v) f e (w) and if we assign two distinct memory locations to v and w (f 0 e ....

[Article contains additional citation context not shown here]

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Prin. of Prog. Lang. (PoPL), pages 98--106, San Diego, CA, January 1998.


Parallelization via Constrained Storage Mapping Optimization - Cohen (1999)   (7 citations)  Self-citation (Cohen)   (Correct)

....in the run time computation of OE functions, especially for non scalar data structures distributed across processors. In our framework, moderation is achieved from two complementary directions: ffl Adding constraints to limit memory expansion, like static expansion avoiding OE functions [1], privatization [17, 14, 6] or array static single assignment [12] All these techniques allow partial removal of memory based dependences, but may extract less parallelism than conversion to single assignment form. ffl Applying storage mapping optimization techniques [4] Some of these are ....

....of real processors is likely to be less than 100, but single assignment form extracted two parallel loops involving m 2 processors The intuition is that we uselessly spilled memory and run time overhead. One would prefer a pragmatic expansion scheme, such as maximal static expansion (MSE) [1], or privatization [17, 14, 6] along the outer loop. Choosing static expansion has the benefit that no OE function is necessary any more. In our case, the result is that x can be safely expanded along outermost and innermost loops, but expansion along the for j loop is forbidden it requires a ....

[Article contains additional citation context not shown here]

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Principles of Programming Languages (PoPL), pages 98--106, San Diego, CA, January 1998.


The Interplay of Expansion and Scheduling in PAF - Feautrier, Collard.. (1998)   (6 citations)  Self-citation (Barthou Cohen Collard)   (Correct)

.... will be used to denote, also, an undefined vector. 7, 5] 28, 29, 36, 31] Section 3 Section 5 Section 6. 2 Scheduling Folding Code Generation Conversion to SA Implementation in progress Currently restricted to affine loop nests Research and implementation status: Implemented in PAF [6] Section 6.1 Section 4 [36] SA for Static Expansion Maximal Affine Loop Nests ADA or FADA [27] 45] 14] Figure 1: Parallelization framework for unrestricted loop nests over arrays Figure 1 describes the parallelization process for this program model. The first phase consists in an ....

....fu : v; u 2 oe(v)g. Several other applications (program checking, etc. do not need the single assignment property either. ffl The last reason is that the program may not be converted to single assignment, perhaps because OE functions are considered too expensive. A maximal static extension [6] may be preferred instead, on top of the data flow analysis (cf Figure 1) To sum things up, array data flow analysis is not opposed to array SSA. Actually, they cannot be opposed: The former is a compile time analysis, whereas the latter is a framework for single assignment form transformation. ....

[Article contains additional citation context not shown here]

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In ACM Symp. on Principles of Programming Languages (PoPL), pages 98--106, San Diego, CA, January 1998.


Applicability of Algebraic Transductions to Data-Flow Analysis - Cohen, Collard (1998)   (2 citations)  Self-citation (Cohen Collard)   (Correct)

....sources for loop nests with arrays. Applications of (A)DFA are numerous, especially in automatic parallelization of imperative programs: array expansion, conversion to single assignment form, etc. Such applications are beyond the scope of this paper, but the reader is referred for instance to [14, 21, 6]. However, most ADFAs have been focused on loop nests, and recursive programs have received little interest. Our main contribution is to introduce the use of algebraic (a.k.a. context free) languages to adequately describe data flows, at the run time instance level, in recursive programs. We show ....

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. Technical Report 97-015, PRiSM, UVSQ, May 1997. To appear in PoPL'98.


Deep Jam: Conversion of Coarse-Grain Parallelism to.. - Carribault, Cohen, Jalby (2005)   (Correct)

No context found.

D. Barthou, A. Cohen, and J.-F. Collard. Maximal static expansion. In 25


A Unified Framework for Schedule and Storage Optimization - Thies, Vivien, Sheldon.. (2001)   (9 citations)  (Correct)

No context found.

D. Barthou, A. Cohen, and J. Collard. Maximal static expansion. In Principles of Programming Languages, pages 98--106, San Diego, CA, Jan. 1998.


A Unified Framework for Schedule and Storage Optimization - Thies (2002)   (9 citations)  (Correct)

No context found.

D. Barthou, A. Cohen, and J. Collard. Maximal static expansion. In Principles of Programming Languages, pages 98--106, San Diego, CA, Jan. 1998.


A Unified Framework for Schedule and Storage Optimization - Thies, Vivien, Sheldon.. (2001)   (9 citations)  (Correct)

No context found.

D. Barthou, A. Cohen, and J. Collard. Maximal static expansion. In Principles of Programming Languages, pages 98--106, San Diego, CA, Jan. 1998.

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