Skip to content
#software testing Open access

ReProspect - A framework for reproducible prospecting of CUDA applications

Sep 2026 · The Journal of Open Source Software · Vol 11, pp. 10067

Abstract

ReProspect is a Python framework for prospecting CUDA code, designed to ensure reproducibility through a fully programmatic approach.Prospecting encompasses three complementary ways of characterizing CUDA-based libraries and software components: how they interact with the CUDA runtime through API tracing, how kernels perform through kernel profiling, and how source constructs translate into machine code through binary analysis.ReProspect builds on NVIDIA tools: Nsight Systems, Nsight Compute, and the CUDA binary utilities.It streamlines data collection and extraction using these tools, and it complements them with new functionalities for programmatic analysis of these data, thus making it possible to encapsulate the entire prospecting analysis in a single Python script. Statement of needHPC software development strives to achieve performance and sustain it over time as hardware and software continue to evolve.Yet the modern programming landscape relies on complex software stacks and compiler toolchains that make it increasingly difficult to reason about code behavior.Developers therefore need tools that support continuous assessment of their code and help them unravel the implications of their design decisions and changes.Beyond ad hoc investigations, fully programmatic tools allow analyses to be integrated across the development cycle and open a range of new use cases.For instance, they support collaborative development by enabling developers to share concise, reproducible analyses that motivate design decisions and help reviewers grasp the impact of proposed changes.They also enable new types of tests in CI/CD pipelines that go beyond traditional output-correctness validation -such as confirming expected API call sequences for key library functionalities, verifying memory traffic for custom data layouts via kernel profiling, or validating the presence of specific instruction patterns in machine code.Finally, they can act as a framework for structuring research artifacts and documenting analyses, enabling others to reproduce and build upon prior work more effectively.For the CUDA stack, NVIDIA provides a set of proprietary tools guaranteed to be up-todate with their software and hardware.The runtime analysis tools Nsight Systems (NVIDIA Corporation, 2026d) and Nsight Compute (NVIDIA Corporation, 2026c) are designed for API tracing and kernel profiling, respectively.They both provide a GUI for exploring the results, as well as a low-level Python API for accessing the raw data.The CUDA binary utilities (NVIDIA Corporation, 2026a) provide command-line access to machine code (SASS or PTX (NVIDIA Corporation, 2026f)) and other information embedded in the binaries.However, while these tools allow raw data to be extracted, they do not themselves provide the infrastructure for effective programmatic analysis.

Read PDF

Similar papers

#computer vision Review Sep 2017

Agile Software Development Methods: Review and Analysis

This publication proposes a definition and a classification of agile software development approaches and analyses ten software development methods that can be characterized as being "agile" against the defined criterion.

P. Abrahamsson, O. Salo, Jussi Ronkainen et al. · 727 citations · ⚡54
#computer vision Jun 2008

The impact of agile practices on communication in software development

The study shows that agile practices improve both informal and formal communication, but indicates that, in larger development situations involving multiple external stakeholders, a mismatch of adequate communication mechanisms can sometimes even hinder the communication.

M. Pikkarainen, Jukka Haikara, O. Salo et al. · 401 citations · ⚡48
#machine learning Review Open access Oct 2014

Software development in startup companies: A systematic mapping study

The results indicate that software engineering work practices are chosen opportunistically, adapted and configured to provide value under the constrains imposed by the startup context.

Nicolò Paternoster, Carmine Giardino, M. Unterkalmsteiner et al. · 394 citations · ⚡54
#computer vision Review Mar 2008

Agile methods in European embedded software development organisations: a survey on the actual use and usefulness of Extreme Programming and Scrum

The results show that the embedded industry has been able to apply agile methods in its development processes and that the appreciation of the agile methods and their individual practices appears to increase once adopted and applied in practice.

O. Salo, P. Abrahamsson · 238 citations · ⚡9
#computer vision Open access Jul 2017

What happens when software developers are (un)happy

Consequences of happiness and unhappiness that are beneficial and detrimental for developers' mental well-being, the software development process, and the produced artifacts are found.

D. Graziotin, Fabian Fagerholm, Xiaofeng Wang et al. · 236 citations · ⚡13
#computer vision Open access Oct 2004

Mobile-D: an agile approach for mobile application development

The Mobile-D approach is briefly outlined here and the experiences gained from four case studies are discussed, which helped develop an agile development approach for mobile application development.

P. Abrahamsson, Antti Hanhineva, H. Hulkko et al. · 225 citations · ⚡18

Related blog posts

Microsoft Research Blog Oct 30, 2026

From synthetic enterprise data evaluations to real Microsoft Copilot AI confidence

Evaluating Microsoft Copilot at enterprise scale requires test data that captures the full complexity of real organizations, yet real enterprise data contains sensitive information that cannot be used for evaluation under any circumstances. The post From synthetic enterprise data evaluations to real Microsoft Copilot AI confidence appeared first on Microsoft Research.

Microsoft Research Blog Oct 29, 2026

Microsoft Research Focus – Edition #97

Host Sowbhagya Suresh shares some of the latest news and cutting-edge research from across Microsoft—from understanding the challenges facing coding agents to uncovering how people use AI at work and improving extended-range weather forecasting. The post Microsoft Research Focus – Edition #97 appeared first on Microsoft Research.

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.