Biography:
Dr. Vivek Sarkar is a Research Staff Member and Senior Manager of the
Programming Technologies department at the IBM
T. J. Watson Research Center. Vivek joined IBM in 1987, after obtaining
a Ph.D. from Stanford University. His dissertation addressed the problem
of automatic profile-directed partitioning and scheduling parallel programs,
with a prototype implementation for programs written in an applicative
language called Sisal.
Vivek's first project at IBM during 1987 to 1990 was the PTRAN research
project, where he worked with the other project members on developing
new compiler technologies for automatic parallelization. Vivek's research
results in this period included new algorithms for profile-directed
partitioning of program dependence graphs into parallel tasks, and efficient
algorithms for computing the control dependence relation.
From 1991 to 1993, Vivek led a product development effort for building
a new high-level optimizer (called ASTI) for uniprocessor and multiprocessor
systems. This optimizer includes loop and data transformations for enhancing
locality and parallelism, and has been shipped in the IBM XL Fortran
product compilers since 1996. Vivek's research results in this period
included a new framework for integrating loop transformations, and several
new algorithms for selecting various loop and data transformations.
During 1994 to 1996, Vivek was manager of the ADTI (Application Development
Technology Institute) department, with the mission of transferring high-priority
programming technologies and tools from the research stage into IBM
products. The ADTI projects initiated during this period included include
automatic shared-memory parallelization, retargetable optimizing back-ends,
C++ optimizations, object-oriented analysis and design tools, and debuggers
for distributed client-server and database applications.
From 1996 to 1997, Vivek was on leave from IBM as a Visiting Associate
Professor in the EECS department at MIT, where he taught the compilers
class and did basic research on Array SSA form, Linear Scan register
allocation and other compiler optimization topics.
During 1998 to 2000, Vivek led the Jalapeno
optimizing compiler group at IBM Watson in building a new dynamic optimizing
compiler for Java.
Vivek currently manages the Programming Technologies department which
includes projects in the areas of dynamic compilation and adaptive optimization,
high-performance Java virtual machines, component verification, debugging
of multithreaded programs, software configuration management, and XML
technologies for database applications. Vivek has been a member of the
IBM Academy of Technology since 1995.