21 citations found. Retrieving documents...
William Pugh and Evan Rosser. Iteration space slicing for locality. In Proc. of 12th International Workshop on Languages and Compilers for Parallel Computing, (LCPC99), August 1999.

 Home/Search   Document Not in Database   Summary   Related Articles   Check  

This paper is cited in the following contexts:
Compile-time Composition of Run-time Data and Iteration.. - Strout, Carter, Ferrante (2003)   (4 citations)  (Correct)

....after the sparse tiling inspector. 4. GENERALIZED SPARSE TILING Sparse tiling techniques, full sparse tiling [26] and cache blocking [7] were developed for an important kernel used in Finite Element Methods, Gauss Seidel. Sparse tiling results in run time generated tiles or iteration slices [21] which cut across loops that only touch a subset of the total data. By performing a iteration reordering based on the sparse tiling, inter loop locality can improve. Intuitively, sparse tiling is applicable anytime a pair of loops share an outer loop (in order to amortize the overhead of run time ....

William Pugh and Evan Rosser. Iteration space slicing for locality. In LCPC Workshop, La Jolla, California, August 1999.


Combining Performance Aspects of Irregular.. - Strout, Carter.. (2002)   (1 citation)  (Correct)

....convergence iterations Figure 2. The arrows show the data dependences for one unknown u i . The relationships between the iteration points are shown with a matrix graphs. til run time. This prohibits the use of compile time tiling. Instead, sparse tiling techniques use iteration space slicing [27] combined with inspector executor [30] ideas to dynamically subdivide iteration spaces induced by the nonzero structure of a sparse matrix (like those shown in figure 2) In the case of Gauss Seidel, it is necessary to reorder the unknowns to apply sparse tiling. The fact that we can apply an a ....

....to rows result in tiles with many more dependences than the original cells of the seed partitioning. It might be possible to add edges to the partition graph before coloring it, so that the final tile dependence graph will have fewer dependences. 6 Related Work Both iteration space slicing [27] and data shackling [23] are techniques which divide up the iteration space based on an initial data partition. This is exactly what sparse tiling does, but sparse tiling handles irregular iteration space graphs, whereas iteration space slicing and data shackling are applicable in loops with ....

William Pugh and Evan Rosser. Iteration space slicing for locality. In LCPC Workshop, La Jolla, California, August 1999. LCPC99 website.


Compile-time Composition of Run-time Data and Iteration.. - Strout, Carter, Ferrante (2003)   (4 citations)  (Correct)

....reordering followed by a lexGroup iteration reordering. Sparse tiling programming techniques, full sparse tiling [29] and cache blocking [9] were developed for an important kernel used in Finite Element Methods, Gauss Seidel. Sparse tiling results in run time generated tiles or iteration slices [24] that cut between loops or across an outer loop and that only access a subset of the total data. By performing an iteration reordering based on sparse tiling, locality between loops or iterations of an outer loop improves. Sparse tiling di#ers from other iteration reordering transformations in ....

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proceedings of the 12th Workshop on Languages and Compilers for Parallel Computing (LCPC), August 1999.


Tiling Imperfectly-nested Loop Nests - Ahmed, Mateev, Pingali (2000)   (9 citations)  (Correct)

....a given block of data are executed when that block is brought into the cache, if that is legal. However, this is not legal for relaxation codes like Jacobi or Gauss Seidel which make multiple traversals over data arrays. A related approach, iteration space slicing was developed by Pugh and Rosser [20], but it does not address tiling. Recently, Song and Li [24] have proposed techniques for tiling codes like Jacobi. These techniques tackle programs with a specific structure consisting of an outermost timestep loop that contains a sequence of perfectly nested loop nests. Their algorithm ....

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proc. of 12th International Workshop on Languages and Compilers for Parallel Computing, (LCPC99), Aug. 1999.


Blocking and Array Contraction Across Arbitrarily Nested.. - Lim, Liao, Lam (2001)   (16 citations)  (Correct)

....nested. Algorithms that only block fully permutable loop nest would also fail as loops J and K cannot be combined into one fully permutable loop nest[1, 2] Data shackling cannot change the order of the execution[13] Iteration space slicing cannot get the blocking e ect to improve spatial locality[19]. 4.2 Handling Sets of Independent Threads In this section, we focus on arbitrarily nested loops that can be broken up into independent threads. It is useful to consider this subset separately even if we are not interested in parallelism because such loops have more degrees of freedom in code ....

....how to schedule the computation if it is illegal to process the data a block at a time in one pass. In contrast, our algorithm automatically nds a legal desirable reordering of the operations to enhance locality. Rosser and Pugh apply iteration space slicing techniques to optimize data locality[19]. The key parameters in their algorithm are the array to be sliced and the dimension along which slicing takes place. Their algorithm derives from the data dependences the set of operations that contributes to the calculation of all the elements belonging to a slice of the given array. By ....

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proceedings of the Twelfth Workshop on Languages and Compilers for Parallel Computing. Springer-Verlag, August 1999.


Overpartitioning with the Rice dHPF Compiler - Broom, Chavarria-Miranda, Jin, .. (2000)   (1 citation)  (Correct)

....To address this issue, we added developed compiler transformations using the dHPF compiler infrastructure to convert conventional loop nests into recursive form. The recursive blocking algorithm is based on a analysis technique called iteration space slicing, first described by Pugh and Rosser [13, 14]. Iteration space slicing performs transitive dependence analysis on the dependence graph to compute which instances of a particular statement must precede or follow a given set of instances of another statement. For this work we developed an analysis algorithm that is much more efficient in ....

William Pugh and Evan Rosser. Iteration Space Slicing For Locality. In LCPC 99, July 1999.


Data Relation Vectors: A New Abstraction for Data Optimizations - Kandemir, Ramanujam   (Correct)

....tiling techniques have difficulty in handling imperfectly nested loops. To address this problem, Kodukula et al. 18] present a data centric tiling strategy which is based on reasoning about the flow of data through the memory hierarchy. This technique has later been extended by Pugh and Rosser [25]. Our work differs from these studies in at least two aspects. First, we propose an abstraction that exclusively works on data space whereas the majority of the previous work use abstractions defined on iteration space. Second, our abstraction has wider applicability as it can be used for ....

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proc. International Workshop on Languages and Compilers for Parallel Computing, August 1999.


Tiling Imperfectly-nested Loop Nests - Ahmed, Mateev, Pingali (2000)   (9 citations)  (Correct)

....when that block is brought into the cache, if that is legal. However, it is not clear how data shackling can be used for relaxation codes like Jacobi or Gauss Seidel that make multiple traversals over data arrays. A related approach called iteration space slicing was developed by Pugh and Rosser [20], but it does not address tiling. Special purpose tiling algorithms focused on particular kinds of imperfectly nested loops have been proposed in the literature. For example, Carr et al. have shown that factorization codes can be tiled after a specific sequence of loop transformations have been ....

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proc. of 12th International Workshop on Languages and Compilers for Parallel Computing, (LCPC99), Aug. 1999.


Transforming Loops to Recursion for Multi-Level Memory.. - Yi, Adve, Kennedy (2000)   (10 citations)  (Correct)

....partial derivatives. Transforming the pivoting versions of LU and Cholesky would require an additional analysis step, as discussed in Section 4. A key step in our algorithm is based on a loop transformation technique called iteration space slicing, recently described by Pugh and Rosser [27, 28]. Iteration space slicing uses transitive dependence analysis on the dependence graph to compute the instances of a particular statement that must precede or follow a given set of instances of another statement. This is a powerful technique that we believe could have wide applicability in ....

....2.3 Computing Iteration Sets In Figure 2, the function Compute Iter Sets computes Current(s) P revious(s) and Future(s) for each statement s that should be included in the recursive procedure for a particular key statement skey. The function uses a technique called iteration space slicing [28] to compute these iteration sets. This technique is analogous to program slicing [26] except that it operates on iteration sets (i.e. instances) of statements rather than entire statements. For a given set of iterations, I0 , of a statement S0 , iteration space slicing computes the speci c ....

[Article contains additional citation context not shown here]

William Pugh and Evan Rosser. Iteration Space Slicing For Locality. In LCPC 99, July 1999.


Synthesizing Transformations for Locality Enhancement of.. - Nawaaz Ahmed Nikolay (2000)   (14 citations)  (Correct)

....all statements that touch a given data element are scheduled to execute when that data item is brought into the cache. Integer linear programming techniques are used to determine if such a schedule is legal. This work has been extended by Pugh and Rosser in their work on iteration space slicing [20]. The data centric approach can be used to generate code for sparse matrix applications as well [19] The framework in this paper can be used to generate data centric code by adding data dimensions to the product space [1] In conclusion, we have described a systematic approach to locality ....

William Pugh and Evan Rosser. Iteration space slicing for locality. In Proc. of 12th International Workshop on Languages and Compilers for Parallel Computing, (LCPC99), August 1999.


Improving Effective Bandwidth through Compiler Enhancement of.. - Ding, Kennedy   (10 citations)  (Correct)

....conditions. Since all programs use iterative algorithms, only the loops inside the time step loop are counted. All programs are measured on a MIPS R12K processor of SGI Origin2000. A slower processor, R10K of SGI Octane is also used for a direct comparison with the earlier work by Pugh and Rosser[15]. Both R12K and R10K provide hardware counters that measure cache misses and other hardware events with high accuracy. Both machines have two caches: L1 is 32KB in size and uses 32 byte cache lines, L2 uses 128 byte cache lines, and the size of L2 is 1MB for Octane and 4MB for Origin2000. Both are ....

....of three loop levels. The execution time and original miss rates are also given in the figures; however, reductions are on the number of misses, not the miss rate. The performance of Swim is reported for Octane because the same machine was used in the work of iteration slicing by Pugh and Rosser[15]. Reuse based loop fusion achieved the same improvement (10 ) as Pugh and Rosser reported for iteration slicing. The succeeding data grouping cut execution time by 2 more because of the additional reduction on L1 and TLB misses. On Origin2000, the number of L2 misses in the original program was ....

[Article contains additional citation context not shown here]

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proceedings of the Twelfth Workshop on Languages and Compilers for Parallel Computing, August 1999.


Synthesizing Transformations for Locality Enhancement of.. - Ahmed, Mateev, Pingali (2001)   (14 citations)  (Correct)

No context found.

William Pugh and Evan Rosser. Iteration space slicing for locality. In Proc. of 12th International Workshop on Languages and Compilers for Parallel Computing, (LCPC99), August 1999.


Synthesizing Transformations for Locality Enhancement of.. - Ahmed, Mateev, Pingali (2000)   (14 citations)  (Correct)

No context found.

William Pugh and Evan Rosser. Iteration space slicing for locality. In Proc. of 12th International Workshop on Languages and Compilers for Parallel Computing, (LCPC99), August 1999.


Tiling Imperfectly-nested Loop Nests - Nawaaz Ahmed Nikolay (2000)   (9 citations)  (Correct)

No context found.

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proc. of 12th International Workshop on Languages and Compilers for Parallel Computing, (LCPC99), Aug. 1999.


Improving Effective Bandwidth through Compiler Enhancement of.. - Ding, Kennedy   (10 citations)  (Correct)

No context found.

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proceedings of the Twelfth Workshop on Languages and Compilers for Parallel Computing, August 1999.


Bu ered Tiling for Sequences of Loop Nests - Youcef Bouchebaba And   (Correct)

No context found.

W. Pugh and E. Rosser. Iteration space slicing for locality. LCPC99, pages 165-184, 1999.


Tiling and memory reuse for sequences of nested loops Youcef.. - De Recherche   (Correct)

No context found.

W. Pugh and E. Rosser. Iteration space slicing for locality. In LCPC99, pages 165-184, San Diego, CA, 1999.


Improving Effective Bandwidth through Compiler Enhancement of.. - Ding (2000)   (10 citations)  (Correct)

No context found.

W. Pugh and E. Rosser. Iteration space slicing for locality. In Proceedings of the Twelfth Workshop on Languages and Compilers for Parallel Computing, August 1999.


Bu ered Tiling for Sequences of Loop Nests - Youcef Bouchebaba And   (Correct)

No context found.

W. Pugh and E. Rosser. Iteration space slicing for locality. LCPC99, pages 165-184, 1999.


Algorithms + Data Structures + Transformations = Portable Program .. - Strout (2000)   (Correct)

No context found.

William Pugh and Evan Rosser. Iteration space slicing for locality. In LCPC Workshop, La Jolla, California, August 1999. LCPC99 website.


Combining Performance Aspects of Irregular.. - Strout, Carter.. (2002)   (1 citation)  (Correct)

No context found.

William Pugh and Evan Rosser. Iteration space slicing for locality. In LCPC Workshop, La Jolla, California, August 1999. LCPC99 website.

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