Skip to content

Allocation Tracking and Parameter Checking for Parallel Programming Models using Contracts

Jul 2026 · arXiv.org · Vol abs/2607.29303 · 0 citations · 21 references
Computer Science

TL;DR

An extension to the CoVer contract language designed to capture and check a broader range of error classes and introduce generic parameter checking and allocation tracking, while keeping generality across both programming model and language is presented.

Abstract

Correctness checking tools for High-Performance Computing programs are typically limited to specific parallel programming models such as MPI or OpenSHMEM. The CoVer framework previously addressed this by introducing a generic, contract-based approach that decoupled API requirements from the core tool. However, CoVer's effectiveness remains bounded by the expressiveness of its underlying contract language, restricting the types of errors it can verify. This paper presents an extension to the CoVer contract language designed to capture and check a broader range of error classes. Our extensions introduce generic parameter checking and allocation tracking, while keeping generality across both programming model and language. We evaluate these extensions and demonstrate that analysis accuracy remains consistent across multiple languages, reinforcing the framework's general applicability. While the additional runtime analyses naturally incur a performance overhead, these improvements greatly enhance CoVer's utility with a significant accuracy improvement.

View source

Similar papers

Preprint Sep 2026

Pack Iteration in Swift: Ordinary Control Flow for Variadic Generics

Pack Iteration, a feature introduced in Swift 6.0 that allows developers to iterate over parameter packs using a familiar, imperative for-in loop, is presented, and empirical evaluation confirms that pack iteration provides performance comparable to - and sometimes significantly better than - the complex workarounds pr...

S. Nerush, Eitan Frachtenberg · 0 citations
Book Aug 2026

Can Formal Specifications Be Synthesized from Tests Alone?

This approach uses LLMs to infer candidate specifications solely from test code and dynamic execution traces: the LLM observes only the program interface, selected inputs, and corresponding outputs or state changes, while the implementation internals remain hidden.

Tian-Hai Liu, Maximilian Müller, Tobias Hey et al. · 0 citations
Preprint Aug 2026

Accelerating C/C++ Pointer Analysis via Compiler-Based Offline Simplifications

This paper explores a new perspective: applying semantic-preserving compiler optimizations directly to intermediate representation (IR) before pointer analysis, which is modular, analysis-agnostic, and easily integrates with existing tools.

Zi-Nan Gu, Pei-Sen Yao, Kui Ren · 0 citations
Preprint Aug 2026

Inferring Empirical Sound Resource Bounds via Symbolic Execution and Linear Programming (Extended Version)

A novel hybrid approach that systematically derives upper bounds for the worst-case resource consumption of functional programs by combines dynamic symbolic execution to exhaustively explore all possible computation paths within a constrained input space with mixed-integer linear programming to derive empirically sound...

Samuel Frontull, M. Meitinger, Georg Moser · 0 citations

ON TWO REPRESENTATIONS OF CONCURRENT PROGRAMS

Under generic conditions, for each fixed input data, the observable behavior of a shared memory concurrent program in the Interleaving Parallel Composition Language extended with the Start and Join operations is equivalent to the observable behavior of a certain execution of a parallel composition of a fixed number of...

T. Panchenko, S. Fabunmi · 0 citations

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