English
Related papers

Related papers: Capturing High-level Nondeterminism in Concurrent …

200 papers

With the ubiquity of parallel commodity hardware, developers turn to high-level concurrency models such as the actor model to lower the complexity of concurrent software. However, debugging concurrent software is hard, especially for…

Programming Languages · Computer Science 2018-08-21 Dominik Aumayr , Stefan Marr , Clément Béra , Elisa Gonzalez Boix , Hanspeter Mössenböck

Today's complex software systems combine high-level concurrency models. Each model is used to solve a specific set of problems. Unfortunately, debuggers support only the low-level notions of threads and shared memory, forcing developers to…

Programming Languages · Computer Science 2017-10-31 Stefan Marr , Carmen Torres Lopez , Dominik Aumayr , Elisa Gonzalez Boix , Hanspeter Mössenböck

To support developers in writing reliable and efficient concurrent programs, novel concurrent programming abstractions have been proposed in recent years. Programming with such abstractions requires new analysis tools because the execution…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-03-19 Benjamin Morandi , Sebastian Nanz , Bertrand Meyer

Deterministic replay is a method for allowing complex multitasking real-time systems to be debugged using standard interactive debuggers. Even though several replay techniques have been proposed for parallel, multi-tasking and real-time…

The actor model is an attractive foundation for developing concurrent applications because actors are isolated concurrent entities that communicate through asynchronous messages and do not share state. Thereby, they avoid concurrency bugs…

Programming Languages · Computer Science 2018-04-25 Carmen Torres Lopez , Stefan Marr , Hanspeter Mössenböck , Elisa Gonzalez Boix

Actor frameworks and similar reactive programming techniques are widely used for building concurrent systems. They promise to be efficient and scale well to a large number of cores or nodes in a distributed system. However, they also expose…

The execution of concurrent programs generally involves some degree of nondeterminism, mostly due to the relative speeds of the concurrent processes. As a consequence, reproducibility is often challenging. This problem has been…

Programming Languages · Computer Science 2021-08-27 Juan José González-Abril , Germán Vidal

We present an algorithmic method for the quantitative, performance-aware synthesis of concurrent programs. The input consists of a nondeterministic partial program and of a parametric performance model. The nondeterminism allows the…

Programming Languages · Computer Science 2015-03-19 Pavol Cerny , Krishnendu Chatterjee , Thomas Henzinger , Arjun Radhakrishna , Rohit Singh

Reproducing executions of multithreaded programs is very challenging due to many intrinsic and external non-deterministic factors. Existing RnR systems achieve significant progress in terms of performance overhead, but none targets the…

Operating Systems · Computer Science 2018-04-05 Hongyu Liu , Sam Silvestro , Wei Wang , Chen Tian , Tongping Liu

Dependency analysis is a technique to identify and determine data dependencies between service protocols. Protocols evolving concurrently in the service composition need to impose an order in their execution if there exist data…

Software Engineering · Computer Science 2010-07-30 Javier Cubo , Ernesto Pimentel , Gwen Salaün , Carlos Canal

Artificial Intelligence has gained a lot of traction in the recent years, with machine learning notably starting to see more applications across a varied range of fields. One specific machine learning application that is of interest to us…

Software Engineering · Computer Science 2023-05-10 Teodor Rares Begu

Concurrent programs are difficult to test due to their inherent non-determinism. To address this problem, testing often requires the exploration of thread schedules of a program; this can be time-consuming when applied to real-world…

Software Engineering · Computer Science 2018-04-11 Tingting Yu , Wei Wen , Xue Han , Jane Hayes

Concurrent Constraint Programming (CCP) is a declarative model for concurrency where agents interact by telling and asking constraints (pieces of information) in a shared store. Some previous works have developed (approximated) declarative…

Logic in Computer Science · Computer Science 2017-02-13 Moreno Falaschi , Maurizio Gabbrielli , Carlos Olarte , Catuscia Palamidessi

Implementing bug-free concurrent programs is a challenging task in modern software development. State-of-the-art static analyses find hundreds of concurrency bugs in production code, scaling to large codebases. Yet, fixing these bugs in…

Software Engineering · Computer Science 2021-08-09 Andreea Costea , Abhishek Tiwari , Sigmund Chianasta , Kishore R , Abhik Roychoudhury , Ilya Sergey

The ability to record and replay program executions with low overhead enables many applications, such as reverse-execution debugging, debugging of hard-to-reproduce test failures, and "black box" forensic analysis of failures in deployed…

Programming Languages · Computer Science 2017-05-18 Robert O'Callahan , Chris Jones , Nathan Froyd , Kyle Huey , Albert Noll , Nimrod Partush

Competitive programming benchmarks are widely used in scenarios such as programming contests and large language model assessments. However, the growing presence of duplicate or highly similar problems raises concerns not only about…

Software Engineering · Computer Science 2025-10-28 Han Deng , Yuan Meng , Shixiang Tang , Wanli Ouyang , Xinzhu Ma

Locks have been widely used as an effective synchronization mechanism among processes and threads. However, we observe that a large number of false inter-thread dependencies (i.e., unnecessary lock contentions) exist during the program…

Programming Languages · Computer Science 2015-04-22 Long Zheng , Xiaofei Liao , Bingsheng He , Song Wu , Hai Jin

The actor model is popular for many types of server applications. Efficient snapshotting of applications is crucial in the deployment of pre-initialized applications or moving running applications to different machines, e.g for debugging…

Programming Languages · Computer Science 2019-09-19 Dominik Aumayr , Stefan Marr , Elisa Gonzalez Boix , Hanspeter Mössenböck

The difficulty of developing reliable parallel software is generating interest in deterministic environments, where a given program and input can yield only one possible result. Languages or type systems can enforce determinism in new code,…

Operating Systems · Computer Science 2010-02-01 Amittai Aviram , Bryan Ford

Parallelism is often required for performance. In these situations an excess of non-determinism is harmful as it means the program can have several different behaviours or even different results. Even in domains such as high-performance…

Programming Languages · Computer Science 2022-10-28 Laure Gonnord , Ludovic Henrio , Lionel Morel , Gabriel Radanne
‹ Prev 1 2 3 10 Next ›