19 citations · 26 across the 10 of their papers we have counts for
11 papers
Coding LLMs Can Be Harnessed to Learn Interpretable Models from Data
Aditya Kumar, Cassandra A. Cohen, William W. Cohen
Since compact, interpretable classifiers correspond to simple programs, it is natural to ask if LLM-based coding agents can be used to learn interpretable models from data. In this…
Learning to Construct Practical Agentic Systems
Aditya Kumar, Zhihan Lei, Jerry Yan +6
Automated design and optimization of agentic LLM-based systems leads to sophisticated systems that substantially improve result quality over off-the-shelf agentic patterns. However…
Localizing and Correcting Errors for LLM-based Planners
Aditya Kumar, William W. Cohen
Large language models (LLMs) have demonstrated strong reasoning capabilities on math and coding, but frequently fail on symbolic classical planning tasks. Our studies, as well as p…
The Devil Is in the Command Line: Associating the Compiler Flags With the Binary and Build Metadata
Gunnar Kudrjavets, Aditya Kumar, Jeff Thomas +1
Engineers build large software systems for multiple architectures, operating systems, and configurations. A set of inconsistent or missing compiler flags generates code that catast…
What Do You Mean by Memory? When Engineers Are Lost in the Maze of Complexity
Gunnar Kudrjavets, Aditya Kumar, Jeff Thomas +1
An accepted practice to decrease applications' memory usage is to reduce the amount and frequency of memory allocations. Factors such as (a) the prevalence of out-of-memory (OOM) k…
When malloc() Never Returns NULL -- Reliability as an Illusion
Gunnar Kudrjavets, Jeff Thomas, Aditya Kumar +2
For decades, the guidance given to software engineers has been to check the memory allocation results. This validation step is necessary to avoid crashes. However, in user mode, in…
There Ain't No Such Thing as a Free Custom Memory Allocator
Gunnar Kudrjavets, Jeff Thomas, Aditya Kumar +2
Using custom memory allocators is an efficient performance optimization technique. However, dependency on a custom allocator can introduce several maintenance-related issues. We pr…
Mining Code Review Data to Understand Waiting Times Between Acceptance and Merging: An Empirical Analysis
Gunnar Kudrjavets, Aditya Kumar, Nachiappan Nagappan +1
Increasing code velocity (or the speed with which code changes are reviewed and merged) is integral to speeding up development and contributes to the work satisfaction of engineers…
Quantifying Daily Evolution of Mobile Software Based on Memory Allocator Churn
Gunnar Kudrjavets, Jeff Thomas, Aditya Kumar +2
The pace and volume of code churn necessary to evolve modern software systems present challenges for analyzing the performance impact of any set of code changes. Traditional method…
The Unexplored Terrain of Compiler Warnings
Gunnar Kudrjavets, Aditya Kumar, Nachiappan Nagappan +1
The authors' industry experiences suggest that compiler warnings, a lightweight version of program analysis, are valuable early bug detection tools. Significant costs are associate…
Clustering case statements for indirect branch predictors
Evandro Menezes, Sebastian Pop, Aditya Kumar
We present an O(nlogn) algorithm to compile a switch statement into jump tables. To generate jump tables that can be efficiently predicted by current hardware branch predictors, we…