English
Related papers

Related papers: Verificarlo CI: continuous integration for numeric…

200 papers

In 2006, Fowler and Foemmel defined ten core Continuous Integration (CI) practices that could increase the speed of software development feedback cycles and improve software quality. Since then, these practices have been widely adopted by…

Software Engineering · Computer Science 2021-03-11 Omar Elazhary , Colin Werner , Ze Shi Li , Derek Lowlind , Neil Ernst , Margaret-Anne Storey

Massive, multi-language, monolithic repositories form the backbone of many modern, complex software systems. To ensure consistent code quality while still allowing fast development cycles, Continuous Integration (CI) is commonly applied.…

Software Engineering · Computer Science 2025-01-22 Daniel Schwendner , Maximilian Jungwirth , Martin Gruber , Martin Knoche , Daniel Merget , Gordon Fraser

Paper addresses the process of dynamic data flow analysis using virtual code integration (VCI), often refered to as dynamic binary rewriting. This article will try to demonstrate all of the techniques that were applied in the SpiderPig…

Cryptography and Security · Computer Science 2009-06-04 Piotr Bania

Mixed-precision computing has become increasingly important in modern high-performance computing and machine learning applications. When implementing custom mixed-precision functions -- such as fused operators, optimized GPU kernels, or…

Numerical Analysis · Mathematics 2026-02-12 Peichen Xie

The complexity and size increase of software has extended the delay for developers as they wait for code analysis and code merge. With the larger and more complex software, more developers nowadays are developing software with large source…

Software Engineering · Computer Science 2021-02-01 Geunsik Lim , MyungJoo Ham , Jijoong Moon , Wook Song

High confidence in floating-point programs requires proving numerical properties of final and intermediate values. One may need to guarantee that a value stays within some range, or that the error relative to some ideal value is well…

Numerical Analysis · Computer Science 2008-01-04 Florent De Dinechin , Christoph Quirin Lauter , Guillaume Melquiond

With the proliferation of IoT and edge devices, we are observing a lot of consumer electronics becoming yet another IoT and edge devices. Unlike traditional smart devices, such as smart phones, consumer electronics, in general, have…

Software Engineering · Computer Science 2021-01-25 Geunsik Lim , MyungJoo Ham , Jijoong Moon , Wook Song , Sangjung Woo , Sewon Oh

Can we assure math computations by automatic verifying floating-point accuracy? We define fast arithmetic (based on Dekker [1971]) over twofold approximations $z\approx z_0+z_1$, such that $z_0$ is standard result and $z_1$ assesses…

Numerical Analysis · Computer Science 2014-07-11 Evgeny Latkin

Agile practices are receiving considerable attention from industry as an alternative to traditional software development approaches. However, there are a number of challenges in combining Agile [2] with Test-driven development (TDD) [10]…

Software Engineering · Computer Science 2015-06-30 Sandeep Sivanandan

Continuous Integration (CI) is a development practice where developers frequently integrate code into a common codebase. After the code is integrated, the CI server runs a test suite and other tools to produce a set of reports (e.g., output…

Software Engineering · Computer Science 2021-07-20 Thomas Durieux , Claire Le Goues , Michael Hilton , Rui Abreu

Quantifying errors and losses due to the use of Floating-Point (FP) calculations in industrial scientific computing codes is an important part of the Verification, Validation and Uncertainty Quantification (VVUQ) process. Stochastic…

To detect and fix bugs and security vulnerabilities, software companies use static analysis as part of the development process. However, static analysis code itself is also prone to bugs. To ensure a consistent level of precision, as…

Software Engineering · Computer Science 2018-01-16 Lisa Nguyen Quang Do , Stefan Krüger , Patrick Hill , Karim Ali , Eric Bodden

Current critical systems commonly use a lot of floating-point computations, and thus the testing or static analysis of programs containing floating-point operators has become a priority. However, correctly defining the semantics of common…

Programming Languages · Computer Science 2025-10-20 David Monniaux

In this paper, we study the benefits and challenges of monitoring Continuous Integration (CI) practices in software development. Our aim is to evaluate the impact of monitoring seven CI practices in industry using three organizations in…

Software Engineering · Computer Science 2025-06-10 Jadson Santos , Daniel Alencar da Costa , Uirá Kulesza

Formal verification of floating-point arithmetic remains challenging due to non-linear arithmetic behavior and the tight coupling between control and datapath logic. Existing approaches often rely on high-level C models for equivalence…

Logic in Computer Science · Computer Science 2026-03-05 Hansa Mohanty , Vaisakh Naduvodi Viswambharan , Deepak Narayan Gadde

Performance of clustering algorithms is evaluated with the help of accuracy metrics. There is a great diversity of clustering algorithms, which are key components of many data analysis and exploration systems. However, there exist only few…

Data Structures and Algorithms · Computer Science 2019-02-18 Artem Lutov , Mourad Khayati , Philippe Cudré-Mauroux

A substantial fraction of the time that computational modellers dedicate to developing their models is actually spent trouble-shooting and debugging their code. However, how this process unfolds is seldom spoken about, maybe because it is…

Computational Engineering, Finance, and Science · Computer Science 2022-11-04 Ester Comellas , Jean-Paul Pelteret , Wolfgang Bangerth

As applications get developed, bugs inevitably get introduced. Often, it is unclear why a given code change introduced a given bug. To find this causal relation and more effectively debug, developers can leverage the existence of a previous…

Programming Languages · Computer Science 2021-04-13 Thomas Dupriez , Steven Costiou , Stéphane Ducasse

For scientific software, especially those used for large-scale simulations, achieving good performance and efficiently using the available hardware resources is essential. It is important to regularly perform benchmarks to ensure the…

Continuous integration (CI) tools integrate code changes by automatically compiling, building, and executing test cases upon submission of code changes. Use of CI tools is getting increasingly popular, yet how proprietary projects reap the…

Software Engineering · Computer Science 2018-09-17 Akond Rahman , Amritanshu Agrawal , Rahul Krishna , Alexander Sobran