Talks & Seminars
Title: Compiling for Multicore Systems
Dr. Krishna N. V., IBM Research
Date & Time: November 11, 2009 11:15
Venue: Conference Room, 01st Floor, 'C' Block, Kanwal Rekhi building
As multi-core systems are gaining popularity, there is a definite need for languages, tools and techniques that can simplify programming high performance machines to exploit the hardware features to a significant level and achieve higher throughput. Two of the main issues that we encounter while compiling for multi-core systems are the following: (a) the difference between user perceived parallelism and parallelism based on the actual hardware, and (b) reasoning about the locality of data and computation. In the talk, we will be discussing a few steps in these directions by taking X10 as the language of reference. To statically establish the place locality in X10 programs, we present an analysis framework based on a static abstraction of activities (threads) and an extension to classical escape analysis to track the abstract activities to which an object can escape. Our framework takes advantage of the high level abstraction of X10 distributions to reason about place locality of array accesses in loops as well. A simple and important example of the separation of concerns between ideal and useful parallelism can be found in chunking of parallel loops, where the programmer expresses ideal parallelism by declaring all iterations of a loop to be parallel and the implementation exploits useful parallelism by executing iterations of the loop in sequential chunks. We addressed the problem of chunking parallel loops via a semantic preserving transformation framework that uses a combination of transformations from past work to obtain an equivalent set of parallel loops that chunk together statements from multiple iterations. In another effort to reduce the gap between ideal and useful parallelism, we designed a compiler that transforms explicitly parallel programs into SPMD programs. Our submissions based on our X10 compiler and runtime have won the HPC (class II) awards, at the SuperComputing conference held in years 2007 and 2008.
Speaker Profile:
V. Krishna Nandivada graduated from UCLA and currently works in IBM India Research Lab, Bangalore. He did his masters from Indian Institute of Science, Bangalore and his bachelors from Regional Engineering College (now known as National Institute of Technology) Rourkela. Before joining in IBM, he has been associated with Hewlett Packard, Bangalore and Sun Labs, Burlington for different periods of times. His interests include program analysis, programming language design, compiler optimizations, and program reasoning.
List of Talks


Faculty CSE IT
Forgot Password
    [+] Sitemap     Feedback