Now showing items 1-9 of 9

    • A Hierarchical Region-Based Static Single Assignment Form 

      Sarkar, Vivek; Zhao, Jisheng (2009-12-14)
      Modern compilation systems face the challenge of incrementally reanalyzing a program’s intermediate representation each time a code transformation is performed. Current approaches typically either re-analyze the entire ...
    • Communication Optimizations for Distributed-Memory X10 Programs 

      Barik, Rajkishore; Budimlić, Zoran; Grove, David; Peshansky, Igor; Sarkar, Vivek; Zhao, Jisheng (2010-04-10)
      X10 is a new object-oriented PGAS (Partitioned Global Address Space) programming language with support for distributed asynchronous dynamic parallelism that goes beyond past SPMD message-passing models such as MPI and SPMD ...
    • Compiler Support for Work-Stealing Parallel Runtime Systems 

      Raman, Raghavan; Zhao, Jisheng; Budimlić, Zoran; Sarkar, Vivek (2010-03-03)
      Multiple programming models are emerging to address an increased need for dynamic task parallelism in multicore shared-memory multiprocessors. Examples include OpenMP 3.0, Java Concurrency Utilities, Microsoft Task Parallel ...
    • Efficient Selection of Vector Instructions using Dynamic Programming 

      Barik, Rajkishore; Sarkar, Vivek; Zhao, Jisheng (2010-06-17)
      Accelerating program performance via SIMD vector units is very common in modern processors, as evidenced by the use of SSE, MMX, VSE, and VSX SIMD instructions in multimedia, scientific, and embedded applications. To take ...
    • Interprocedural Strength Reduction of Critical Sections in Explicitly-Parallel Programs 

      Barik, Rajkishore; Sarkar, Vivek; Zhao, Jisheng (2013-05-01)
      In this paper, we introduce novel compiler optimization techniques to reduce the number of operations performed in critical sections that occur in explicitly-parallel programs. Specifically, we focus on three code ...
    • Parallel Flow-Sensitive Points-to Analysis 

      Zhao, Jisheng; Burke, Michael G.; Sarkar, Vivek (2017-02-01)
      Points-to analysis is a fundamental requirement for many program analyses, optimizations, and debugging/verification tools. However, finding an effective balance between performance, scalability and precision in points-to ...
    • Register Allocation using Bipartite Liveness Graphs 

      Barik, Rajkishore; Sarkar, Vivek; Zhao, Jisheng (2010-10-12)
      Register allocation is an essential optimization for all compilers. A number of sophisticated register allocation algorithms have been developed based on Graph Coloring (GC) over the years. However, these algorithms pose ...
    • Scalable and Precise Dynamic Datarace Detection for Structured Parallelism 

      Raman, Raghavan; Zhao, Jisheng; Sarkar, Vivek; Vechev, Martin; Yahav , Eran (2012-07-06)
      Existing dynamic race detectors suffer from at least one of the following three limitations: i) space overhead per memory location grows linearly with the number of parallel threads [13], severely limiting the parallelism ...
    • Support for Complex Numbers in Habanero 

      Zhao, Jisheng; Cavé, Vincent; Yan, Yonghong; Budimlić, Zoran; Sarkar, Vivek (2009-05-18)
      No Abstract