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.