English
Related papers

Related papers: From Single-thread to Multithreaded: An Efficient …

200 papers

Static analysis techniques enhance the security, performance, and reliability of programs by analyzing and portraiting program behaviors without the need for actual execution. In essence, static analysis takes the Intermediate…

Programming Languages · Computer Science 2024-05-22 Bowen Zhang , Wei Chen , Hung-Chun Chiu , Charles Zhang

Synthesis is a particularly challenging problem for concurrent programs. At the same time it is a very promising approach, since concurrent programs are difficult to get right, or to analyze with traditional verification techniques. This…

Formal Languages and Automata Theory · Computer Science 2015-06-09 Anca Muscholl

Benefits of static type systems are well-known: they offer guarantees that no type error will occur during runtime and, inherently, inferred types serve as documentation on how functions are called. On the other hand, many type systems have…

Programming Languages · Computer Science 2020-08-31 Isabel Wingen , Philipp Körner

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

In this paper, we show how thread partitioning helps in proving properties of mobile systems. Thread partitioning consists in gathering the threads of a mobile system into several classes. The partitioning criterion is left as a parameter…

Other Computer Science · Computer Science 2008-02-04 Jérôme Feret

Current runtime verification tools seldom make use of multi-threading to speed up the evaluation of a property on a large event trace. In this paper, we present an extension to the BeepBeep 3 event stream engine that allows the use of…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-07-11 Sylvain Hallé , Raphaël Khoury , Sébastien Gaboury

CLASS is a proof-of-concept general purpose linear programming language, flexibly supporting realistic concurrent programming idioms, and featuring an expressive linear type system ensuring that programs (1) never misuse or leak stateful…

Programming Languages · Computer Science 2025-05-28 Luís Caires

This paper presents a new approach for optimizing multitheaded programs with pointer constructs. The approach has applications in the area of certified code (proof-carrying code) where a justification or a proof for the correctness of each…

Software Engineering · Computer Science 2012-12-21 Mohamed A. El-Zawawy

Quantitative theories of information flow give us an approach to relax the absolute confidentiality properties that are difficult to satisfy for many practical programs. The classical information-theoretic approaches for sequential…

Cryptography and Security · Computer Science 2013-06-13 Tri Minh Ngo , Marieke Huisman

A self-stabilizing simulation of a single-writer multi-reader atomic register is presented. The simulation works in asynchronous message-passing systems, and allows processes to crash, as long as at least a majority of them remain working.…

Distributed, Parallel, and Cluster Computing · Computer Science 2010-08-03 Noga Alon , Hagit Attiya , Shlomi Dolev , Swan Dubois , Maria Gradinariu , Sebastien Tixeuil

Analyzing the behavior of a program running on a processor that supports speculative execution is crucial for applications such as execution time estimation and side channel detection. Unfortunately, existing static analysis techniques…

Programming Languages · Computer Science 2019-08-16 Meng Wu , Chao Wang

Static code analysis is a powerful approach to detect quality deficiencies such as performance bottlenecks, safety violations or security vulnerabilities already during a software system's implementation. Yet, as current software systems…

Software Engineering · Computer Science 2017-10-23 Eric Bodden

Certification through auditing allows to ensure that critical embedded systems are secure. This entails reviewing their critical components and checking for dangerous execution paths. This latter task requires the use of specialized tools…

Software Engineering · Computer Science 2023-03-08 Guilhem Lacombe , David Feliot , Etienne Boespflug , Marie-Laure Potet

As compute power increases with time, more involved and larger simulations become possible. However, it gets increasingly difficult to efficiently use the provided computational resources. Especially in particle-based simulations with a…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-08-05 Sebastian Eibl , Ulrich Rüde

In static analysis by abstract interpretation, one often uses widening operators in order to enforce convergence within finite time to an inductive invariant. Certain widening operators, including the classical one over finite polyhedra,…

Programming Languages · Computer Science 2011-09-13 David Monniaux , Julien Le Guen

We present a static analysis framework for real-time task systems running on multi-core processors. Our method analyzes tasks in isolation at the binary level and generates worst-case timing and memory access profiles. These profiles can…

Systems and Control · Electrical Eng. & Systems 2021-04-01 Thomas Carle , Hugues Cassé

Major chip manufacturers have all introduced Multithreaded processors. These processors are used for running a variety of workloads. Efficient resource utilization is an important design aspect in such processors. Depending on the workload,…

Performance · Computer Science 2019-09-20 Murthy Durbhakula

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

The increasing use of cloud computing and remote execution have made program security especially important. Code obfuscation has been proposed to make the understanding of programs more complicated to attackers. In this paper, we exploit…

Cryptography and Security · Computer Science 2013-11-04 Rasha Salah Omar , Ahmed El-Mahdy , Erven Rohou

This paper presents a program logic for reasoning about multithreaded Java-like programs with dynamic thread creation, thread joining and reentrant object monitors. The logic is based on concurrent separation logic. It is the first detailed…

Logic in Computer Science · Computer Science 2015-07-01 Christian Haack , Marieke Huisman , Clément Hurlin , Afshin Amighi