English
Related papers

Related papers: Static Analysis of Run-Time Errors in Embedded Rea…

200 papers

Context-bounded analysis has been shown to be both efficient and effective at finding bugs in concurrent programs. According to its original definition, context-bounded analysis explores all behaviors of a concurrent program up to some…

Logic in Computer Science · Computer Science 2015-07-01 Mohamed Faouzi Atig , Ahmed Bouajjani , Shaz Qadeer

Static analyzers are typically complex tools and thus prone to contain bugs themselves. To increase the trust in the verdict of such tools, witnesses encode key reasoning steps underlying the verdict in an exchangeable format, enabling…

We show that abstract interpretation-based static program analysis can be made efficient and precise enough to formally verify a class of properties for a family of large programs with few or no false alarms. This is achieved by refinement…

Programming Languages · Computer Science 2016-08-14 Bruno Blanchet , Patrick Cousot , Radhia Cousot , Jerôme Feret , Laurent Mauborgne , Antoine Miné , David Monniaux , Xavier Rival

In current microarchitectures, due to the complex memory hierarchies and different latencies on memory accesses, thread and data mapping are important issues to improve application performance. Software transactional memory (STM) is an…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-24 Douglas Pereira Pasqualin , Matthias Diener , André Rauber Du Bois , Maurício Lima Pilla

Parallel programming in high-performance computing depends on low-level APIs such as MPI, requiring users to manage synchronization and resources manually. Several correctness checking tools exist to help bug-free code development, though…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-03-04 Yussur Mustafa Oraji , Alexander Hück , Christian Bischof

Modern software systems have become increasingly complex, which makes them difficult to test and validate. Detecting software partial anomalies in complex systems at runtime can assist with handling unintended software behaviors, avoiding…

Software Engineering · Computer Science 2022-04-27 Shiyi Kong , Jun Ai , Minyan Lu , Shuguang Wang , W. Eric Wong

We consider the broad problem of analyzing safety properties of asynchronous concurrent programs under arbitrary thread interleavings. Delay-bounded deterministic scheduling, introduced in prior work, is an efficient bug-finding technique…

Programming Languages · Computer Science 2021-05-18 Andrew Johnson , Thomas Wahl

Concurrently accessing shared data without locking is usually a subject to race conditions resulting in inconsistent or corrupted data. However, there are programs operating correctly without locking by exploiting the atomicity of certain…

Programming Languages · Computer Science 2012-11-28 Eva Beckschulze , Sebastian Biallas , Stefan Kowalewski

The rigid gang task model is based on the idea of executing multiple threads simultaneously on a fixed number of processors to increase efficiency and performance. Although there is extensive literature on global rigid gang scheduling,…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-09-04 Binqi Sun , Tomasz Kloda , Marco Caccamo

Since its introduction, Word2Vec and its variants are widely used to learn semantics-preserving representations of words or entities in an embedding space, which can be used to produce state-of-art results for various Natural Language…

Computation and Language · Computer Science 2016-06-28 Jeroen B. P. Vuurens , Carsten Eickhoff , Arjen P. de Vries

This article presents a complete scheme for the development of Critical Embedded Systems with Multiple Real-Time Constraints. The system is programmed with a language that extends the synchronous approach with high-level real-time…

Programming Languages · Computer Science 2010-04-01 Julien Forget , Frédéric Boniol , David Lesens , Claire Pagetti

When optimizing a thread in a concurrent program (either done manually or by the compiler), it must be guaranteed that the resulting thread is a refinement of the original thread. Most theories of valid optimizations are formulated in terms…

Programming Languages · Computer Science 2015-10-27 Daniel Poetzl , Daniel Kroening

Even though much progress has been made in identifying and mitigating smart contract vulnerabilities, we often hear about coding or design issues leading to great financial losses. This paper presents our progress toward finding defects…

Logic in Computer Science · Computer Science 2024-11-01 Stefan-Claudiu Susan

Fault-tolerance has always been an important topic when it comes to running massively parallel programs at scale. Statistically, hardware and software failures are expected to occur more often on systems gathering millions of computing…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-06-13 Julien Adam , Maxime Kermarquer , Jean-Baptiste Besnard , Leonardo Bautista-Gomez , Marc Perache , Patrick Carribault , Julien Jaeger , Allen D. Malony , Sameer Shende

Multi-threaded programs have many applications which are widely used such as operating systems. Analyzing multi-threaded programs differs from sequential ones; the main feature is that many threads execute at the same time. The effect of…

Software Engineering · Computer Science 2011-11-04 Mohamed A. El-Zawawy , Hamada A. Nayel

Concurrent linearizable access to shared objects can be prohibitively expensive in a high contention workload. Many applications apply ad-hoc techniques to eliminate the need of synchronous atomic updates, which may result in…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-05-11 Deepthi Devaki Akkoorath , José Brandão , Annette Bieniusa , Carlos Baquero

Programmers often add meaningful information about program semantics when naming program entities such as variables, functions, and macros. However, static analysis tools typically discount this information when they look for bugs in a…

Programming Languages · Computer Science 2020-09-22 Roger Scott , Joseph Ranieri , Lucja Kot , Vineeth Kashyap

Predictive models are fundamental to engineering reliable software systems. However, designing conservative, computable approximations for the behavior of programs (static analyses) remains a difficult and error-prone process for modern…

Programming Languages · Computer Science 2011-05-10 David Van Horn , Matthew Might

In the presence of accelerated fault rates, which are projected to be the norm on future exascale systems, it will become increasingly difficult for high-performance computing (HPC) applications to accomplish useful computation. Due to the…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-01-19 Saurabh Hukerikar , Keita Teranishi , Pedro C. Diniz , Robert F. Lucas

It is well known that modern functional programming languages are naturally amenable to parallel programming. Achieving efficient parallelism using functional languages, however, remains difficult. Perhaps the most important reason for this…

Programming Languages · Computer Science 2018-02-20 Adrien Guatto , Sam Westrick , Ram Raghunathan , Umut Acar , Matthew Fluet