Sulekha R Kulkarni Education

advertisement
Sulekha R Kulkarni
1178, Piedmont Avenue, #1AC, Midtown NE, Atlanta, GA 30309
+1-312-952-8402 sulekha.kulkarni@gmail.com
Education
Georgia Institute of Technology
PhD, Computer Science
Advisor: Mayur Naik
Atlanta, GA
August 2014 – Present
Indian Institute of Science
Bangalore, India
MSc(Engg), Computer Science
August 1992 – April 1996
Thesis: Linear-time parsers for a sub-class of context-sensitive languages
Advisor: Priti Shankar
Bangalore Institute of Technology
BE, Computer Science
Bangalore, India
August 1984 – April 1989
Research Experience
Georgia Institute of Technology
Graduate Research Assistantship, Program Analysis Group
Advisor: Mayur Naik
Atlanta, GA
August 2014 – Present
My current research is on incremental program analysis. It is observed that most (Java)
applications heavily use standard libraries. An analysis which operates on such an application
discovers many facts about the libraries. I am exploring how these facts discovered for
libraries can be reused to incrementally analyze a different application using the same
libraries. Some challenges which we have to handle are that most facts discovered about the
library are conditional on facts in the application, applications may touch different parts of the
libraries, how much learning can be accomplished, etc.
Professional Experience
Microsoft Research India
Research Intern, Programming Languages and Tools Group
Bangalore, India
March 2014 – June 2014
R2 is a state-of-art analysis tool for probabilistic programs which efficiently samples the
posterior distribution implicit in a probabilistic program by generating input samples coming
from known distributions. Its efficiency comes from the fact that it truncates the generated
input samples by pre-conditions which are computed by upward-propagation of acceptance
conditions. My work involved the implementation of features in this tool which required
intermediate tree rewriting and support for vector operations on application data.
Parallocity Software India Pvt Ltd
Head of compiler front-end
Bangalore, India
March 2009 – August 2013
Parallocity was a start-up with a dynamic defect detection product that detected critical errors
(data races, deadlocks, memory defects and memory leaks). My work involved:
• Compiler-based instrumentation to aid detection of defects
• Design and implementation of a differential code coverage algorithm to highlight coverage
for code differences between two versions of the same application.
• Design and implementation of a report generation module which used a unique approach to
collate defect data, providing a user with multiple views of the same data.
kNEST Technologies Pvt Ltd
Founder, Director, Technical Lead
Bangalore, India
September 2007 – February 2009
kNEST was a Bangalore-based software services company in the domain of development
tools. My work involved the development of customized assembler, linker and debugger, for a
family of DSP chips. Customizations involved the capability to debug several remote targets
in a multiplexed way by setting/changing contexts.
Synergy Infotech Pvt Ltd (later acquired by Sonim Technologies)
Bangalore, India
Project Leader
June 1999- August 2007
Synergy Infotech was a Bangalore-based software services company executing projects in
multiple domains. My work, which was in the domain of developement tools, involved:
• Development of optimization passes in a SUIF based C compiler
• Development of a software pipelining compiler pass using iterative modulo scheduling.
• Design and development of assemblers and linkers for six DSP processor families. The
special linker features implemented included support for overlay, support for multiple memory
banks, support for archive libraries, support for linker command scripts, support for COFF /
ELF object file formats. One linker (for Texas Instrument's C67 - a VLIW processor) involved
the implementation of a stack machine to handle complex relocations.
• Porting and customization of the Gnu Debugger (GDB) for two different DSP processors.
GDB ran on a host machine and application execution happened on remote targets. Overlays,
multiple memory banks and asynchronous interrupts from gdb were supported.
• Development of a placement algorithm to make a compact layout for a questionnaire and
print the final layout in pdf, minimizing the number of printed pages.
• Development of a high availability platform by configuring Linux virtual server. This
involved externally synchronizing the database fail-over with the linux server fail-over.
PSI Data Systems Pvt Ltd
Developer
Bangalore, India
December 1989 – December 1990
I was involved in the development of a module which displayed a data dependence graph in a
FORTRAN Parallelizer environment using a depth-first-search based heuristic.
Publications
• S.R.Kulkarni and P.Shankar, Linear time parsers for classes of non context free languages,
Theoretical Computer Science 165 (1996) 355–390
• B.Dehbonei, C.Laurent, N.Tawbi, R.K.Kulkarni, S.R.Kulkarni, PMACS: An Environment
for Parallel Programming, International Parallel Processing Symposium (1991) 638–641
Download