19 citations · 50 across the 14 of their papers we have counts for
14 papers
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…
Does Code Review Speed Matter for Practitioners?
Gunnar Kudrjavets, Ayushi Rastogi
Increasing code velocity is a common goal for a variety of software projects. The efficiency of the code review process significantly impacts how fast the code gets merged into the…
Are We Speeding Up or Slowing Down? On Temporal Aspects of Code Velocity
Gunnar Kudrjavets, Nachiappan Nagappan, Ayushi Rastogi
This paper investigates how the duration of various code review periods changes over a projects' lifetime. We study four open-source software (OSS) projects: Blender, FreeBSD, LLVM…
Who Ate My Memory? Towards Attribution in Memory Management
Gunnar Kudrjavets, Ayushi Rastogi, Jeff Thomas +1
To understand applications' memory usage details, engineers use instrumented builds and profiling tools. Both approaches are impractical for use in production environments or deplo…
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…
Is Kernel Code Different From Non-Kernel Code? A Case Study of BSD Family Operating Systems
Gunnar Kudrjavets, Jeff Thomas, Nachiappan Nagappan +1
Code churn and code velocity describe the evolution of a code base. Current research quantifies and studies code churn and velocity at a high level of abstraction, often at the ove…
The Evolving Landscape of Software Performance Engineering
Gunnar Kudrjavets, Jeff Thomas, Nachiappan Nagappan
Satisfactory software performance is essential for the adoption and the success of a product. In organizations that follow traditional software development models (e.g., waterfall)…
The Unexplored Treasure Trove of Phabricator Code Review
Gunnar Kudrjavets, Nachiappan Nagappan, Ayushi Rastogi
Phabricator is a modern code collaboration tool used by popular projects like FreeBSD and Mozilla. However, unlike the other well-known code review environments, such as Gerrit or…
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…
Do Small Code Changes Merge Faster? A Multi-Language Empirical Investigation
Gunnar Kudrjavets, Nachiappan Nagappan, Ayushi Rastogi
Code velocity, or the speed with which code changes are integrated into a production environment, plays a crucial role in Continuous Integration and Continuous Deployment. Many stu…
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…