Publications
Papers, patents, and grants
Research and engineering work across compilers, runtime checking, profiling, and optimization.
Publications
Journal Paper · CLSS 2016
Lightweight Runtime Checking of C Programs with RTC
Reed Milewicz, Rajeshwar Vanka, James Tuck, Daniel Quinlan, Peter Pirkelbauer
RTC instruments C programs with runtime safety checks for memory violations, arithmetic underflow/overflow, and type violations. The framework is lightweight enough for in situ analysis.
- Average runtime overhead: 9.7×
- Average memory overhead: 3.5×
Conference Paper · SAC 2015
Runtime Checking C Programs
Reed Milewicz, Rajeshwar Vanka, James Tuck, Daniel Quinlan, Peter Pirkelbauer
Introduces RTC, a runtime monitoring tool that instruments unsafe code and monitors execution to detect safety violations.
- Detected 98% of memory-related bugs in benchmarks
- Zero false positives
Conference Paper · CGO 2012
Efficient and Accurate Data Dependence Profiling using Software Signatures
Rajeshwar Vanka, James Tuck
A novel set-based profiler for fast and accurate runtime data dependence profiling using software signatures and tunable performance/accuracy tradeoffs.
- Fast set membership and insertion operations
- Optimization-driven dependence profiling
ACM SRC Poster · PLDI 2011
Efficient Data Dependence Profiling for Speculative Load Hoisting
Rajeshwar Vanka, James Tuck
A fast and accurate data dependence profiler using Bloom filters, with LLVM IR-level instrumentation feeding profiling data back into optimization passes.
- Average slowdown of 22× versus aggressive baseline
- Compiler feedback into unmodified optimization passes
ACM SRC Poster · PACT 2009
Enhanced Memoization using Function Splitting
Rajeshwar Vanka, James Tuck
Static transformation work to expose and eliminate hidden redundant calls by splitting functions and creating regions better suited for memoization.
- Function splitting to expose redundancy
- Improved applicability of existing memoization techniques
Patents
US Patent 10,949,181 · Granted Mar 16, 2021
Computing Performance for Execution of Functions Called by Function Handles
Rajeshwar Vanka, Ayon Basumallik, Brett Baker
Scales a JIT compiler’s ability to handle large programs with many function handles by specializing handles on types and shifting cost from runtime to a one-time compile cost.
US Patent 8,332,451 B2
Programmable CORDIC Processor
Phanimithra Gangalakurti et al.
Patent covering a multi-stage programmable CORDIC co-processor design originating from internship work at Redpine Signals.
Grants
NSF Grant 1320356
A Practical Data Dependence Profiler for Program Characterization and Optimization
James Tuck
A practical data dependence profiling project for optimization and program characterization. The proposal built on research connected to my doctoral work.