Now showing items 23-42 of 45

    • From Control Flow to Dataflow 

      Beck, Micah; Pingali, Keshav (Cornell University, 1989-10)
      Are imperative languages tied inseparably to the von Neumann model or can they be implemented in some natural way on dataflow architectures? In this paper, we show how imperative language programs can be translated into ...
    • A Fully Abstract Semantics for a Functional Language with Logic Variables 

      Pingali, Keshav; Panangaden, Prakash; Jagadeesan, Radhakrishnan (Cornell University, 1989-02)
      We present a novel denotational semantics for a functional language with logic variables intended for parallel execution. The intuition behind this semantics is that equations represent equational constraints on data. ...
    • A Generic Programming System for Sparse Matrix Computations 

      Mateev, Nikolay; Kotlyar, Vladimir; Pingali, Keshav; Stodghill, Paul (Cornell University, 1999-07)
      Sparse matrices are stored in compressed formats in which zeros are not stored explicitly. Writing high-performance sparse matrix libraries is a difficult and tedious job because there are many compressed formats in use ...
    • I-Structures: Data Structures for Parallel Computing 

      Arvind; Nikhil, Rishiyur; Pingali, Keshav (Cornell University, 1987-02)
      It is difficult simulteneously to achieve elegance, efficiency and parallelism in functional programs that manipulate large data structures. We demonstrate this through careful analysis of program examples using three ...
    • The Lambda Loop Transformation Toolkit (User's Reference Manual) 

      Li, Wei; Pingali, Keshav (Cornell University, 1994-08)
      Loop transformations are becoming critical to exploiting parallelism and data locality in parallelizing and optimizing compilers. This document describes the Lambda loop transformation toolkit, an implementation of the ...
    • The Lambda Loop Transformation Toolkit (User's Reference Manual) 

      Li, Wei; Pingali, Keshav (Cornell University, 1994-06)
      Loop transformations are becoming critical to exploiting parallelism and data locality in parallelizing and optimizing compilers. This document describes the Lambda loop transformation toolkit, an implementation of the ...
    • Lazy Evaluation and the Logic Variable 

      Pingali, Keshav (Cornell University, 1987-11)
      Functional languages can be enriched with logic variables to provide new computational features such as incremental construction of data structures. In this paper, we present a novel application for logic variables that ...
    • Left-looking to Right-looking and vice versa: An Application of FractalSymbolic Analysis to Linear Algebra Code Restructuring 

      Mateev, Nikolay; Menon, Vijay; Pingali, Keshav (Cornell University, 2000-08-01)
      We have recently developed a new program analysis strategy called fractal symbolic analysis that addresses some of limitations of techniques such as dependence analysis. In this paper, we show how fractal symbolic analysis ...
    • Man vs. Machine : Comparing Handwritten and Compiler-generated Application-Level Checkpointing 

      Ezick, James; Marques, Daniel; Pingali, Keshav; Stodghill, Paul (Cornell University, 2004-10-12)
      The contributions of this paper are the following. We describe the implementation of the $C^3$ system for semi-automatic application-level checkpointing of C programs. The system has (i) a pre-compiler that instruments C ...
    • Optimal Control Dependence Computation and the Roman Chariots Problem 

      Pingali, Keshav; Bilardi, Gianfranco (Cornell University, 1996-09)
      The control dependence relation plays a fundamental role in program restructuring and optimization. The usual representation of this relation is the control dependence graph (CDG), but the size of the CDG can grow ...
    • Performance Analysis of the Pipe Problem, a Multi-Physics Simulation Based on Web Services 

      Stodghill, Paul; Cronin, Rob; Pingali, Keshav; Heber, Gerd (Cornell University, 2004-02-16)
      The ongoing convergence of grid computing and web services has inspired a number of studies on the use of SOAP-based web services for scientific computing. These studies have exposed several performance problems in ...
    • Process Decomposition Through Locality of Reference 

      Rogers, Anne M.; Pingali, Keshav (Cornell University, 1988-08)
      In the context of sequential computers, it is common practice to exploit temporal locality of reference through devices such as caches and virtual memory. In the context of multiprocessors, we believe that it is equally ...
    • Register Renaming and Dynamic Speculation: an Alternative Approach 

      Moudgill, Mayan; Pingali, Keshav; Vassiliadis, Stamatis (Cornell University, 1993-08)
      In this paper, we present a novel mechanism that implements register renaming, dynamic speculation and precise interrupts. Renaming of registers is performed during the instruction fetch stage instead of the decode stage, ...
    • A Relational Approach to the Compilation of Sparse Matrix Programs 

      Kotlyar, Vladimir; Pingali, Keshav; Stodghill, Paul (Cornell University, 1997-03)
      We present a relational algebra based framework for compiling efficient sparse matrix code from dense DO-ANY loops and a specification of the representation of the sparse matrix. We present experimental data that demonstrates ...
    • A Singular Loop Transformation Framework Based on Non-singular Matrices 

      Li, Wei; Pingali, Keshav (Cornell University, 1992-07)
      In this paper, we discuss a loop transformation framework that is based on integer non-singular matrices. The transformations included in this framework are called A-transformations and include permutation, skewing ...
    • A Singular Loop Transformation Framework Based on Non-Singular Matrices 

      Li, Wei; Pingali, Keshav (Cornell University, 1992-07)
      In this paper, we discuss a loop transformation framework that is based on integer non-singular matrices. The transformations included in this framework are called $\Lambda$-transformations and include permutation, skewing ...
    • Solving Alignment using Elementary Linear Algebra 

      Bau, David; Kodukula, Induprakas; Kotlyar, Vladimir; Pingali, Keshav; Stodghill, Paul (Cornell University, 1995-01)
      Data and computation alignment is an important part of compiling sequential programs to architectures with non-uniform memory access times. In this paper, we show that elementary matrix methods can be used to determine ...
    • Static Scheduling for Dynamic Dataflow Machines 

      Beck, Micah; Pingali, Keshav; Nicolau, Alexandru (Cornell University, 1989-01)
      Dataflow machines can "unravel" loops automatically so that many iterations of a loop can execute in parallel. Unbounded loop unraveling can strain the resources available on the machine and, in extreme cases, deadlock ...
    • Think Globally, Search Locally 

      Yotov, Kamen; Pingali, Keshav; Stodghill, Paul (Cornell University, 2004-11-04)
      A key step in program optimization is the determination of optimal values for code optimization parameters such as cache tile sizes and loop unrolling factors. One approach, which is implemented in most compilers, is to ...
    • Tiling Imperfectly-nested Loop Nests (REVISED) 

      Ahmed, Nawaaz; Mateev, Nikolay; Pingali, Keshav (Cornell University, 2000-01-31)
      Tiling is one of the more important transformations for enhancing locality of reference in programs. Tiling of perfectly-nested loop nests (which are loop nests in which all assignment statements are contained in the ...