English
Related papers

Related papers: Performance Impact of Lock-Free Algorithms on Mult…

200 papers

Lockstep processing is a recognized technique for helping to secure functional-safety relevant processing against, for instance, single upset errors that might cause faulty execution of code. Lockstepping processors does however bind…

Hardware Architecture · Computer Science 2021-07-20 Hans Dermot Doran , Timo Lang

Most commercial embedded devices have been deployed with a single processor architecture. The code size and complexity of applications running on embedded devices are rapidly increasing due to the emergence of application business models…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-01-26 Geunsik Lim , Changwoo Min , YoungIk Eom

Real-time and cyber-physical systems need to interact with and respond to their physical environment in a predictable time. While multicore platforms provide incredible computational power and throughput, they also introduce new sources of…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-06-29 Ayoosh Bansal , Jayati Singh , Yifan Hao , Jen-Yang Wen , Renato Mancuso , Marco Caccamo

Advancements in multi-core have created interest among many research groups in finding out ways to harness the true power of processor cores. Recent research suggests that on-board component such as cache memory plays a crucial role in…

Hardware Architecture · Computer Science 2011-11-15 N. Ramasubramanian , Srinivas V. V. , N. Ammasai Gounden

Common implementations of core memory allocation components, like the Linux buddy system, handle concurrent allocation/release requests by synchronizing threads via spin-locks. This approach is clearly not prone to scale with large thread…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-05-22 Romolo Marotta , Mauro Ianni , Alessandro Pellegrini , Andrea Scarselli , Francesco Quaglia

A challenge for programming language research is to design and implement multi-threaded low-level languages providing static guarantees for memory safety and freedom from data races. Towards this goal, we present a concurrent language…

Programming Languages · Computer Science 2010-02-05 Prodromos Gerakios , Nikolaos Papaspyrou , Konstantinos Sagonas

The increasing parallelism of many-core systems demands for efficient strategies for the run-time system management. Due to the large number of cores the management overhead has a rising impact to the overall system performance. This work…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-02-11 Daniel Gregorek , Robert Schmidt , Alberto Garcia-Ortiz

The aim of parallel computing is to increase an application performance by executing the application on multiple processors. OpenMP is an API that supports multi platform shared memory programming model and shared-memory programs are…

Distributed, Parallel, and Cluster Computing · Computer Science 2013-11-12 Vibha Rajput , Alok Katiyar

Multiple applications executing concurrently on a multicore system interfere with each other at different shared resources such as main memory and shared caches. Such inter-application interference, if uncontrolled, results in high system…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-08-14 Lavanya Subramanian

We present an efficient lock-free algorithm for parallel accessible hash tables with open addressing, which promises more robust performance and reliability than conventional lock-based implementations. ``Lock-free'' means that it is…

Distributed, Parallel, and Cluster Computing · Computer Science 2007-05-23 Hui Gao , Jan Friso Groote , Wim H. Hesselink

When compared to blocking concurrency, non-blocking concurrency can provide higher performance in parallel shared-memory contexts, especially in high contention scenarios. This paper proposes FLeeC, an application-level cache system based…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-06-17 André J. Costa , Nuno M. Preguiça , João M. Lourenço

The mutual-exclusion property of locks stands in the way to scalability of parallel programs on many-core architectures. Locks do not allow progress guarantees, because a task may fail inside a critical section and keep holding a lock that…

Programming Languages · Computer Science 2018-06-20 Johann Blieberger , Bernd Burgstaller

The performance of highly parallel applications on distributed-memory systems is influenced by many factors. Analytic performance modeling techniques aim to provide insight into performance limitations and are often the starting point of…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-01-11 Ayesha Afzal , Georg Hager , Gerhard Wellein

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

A critical component in the implementation of a concurrent tabling system is the design of the table space. One of the most successful proposals for representing tables is based on a two-level trie data structure, where one trie level…

Programming Languages · Computer Science 2014-05-15 Miguel Areias , Ricardo Rocha

Online Transaction Processing (OLTP) is a classic application with a growing business. CPU-based OLTP has low lock serving efficiency. The main reason is that most locks are cold, and the lock agent must issue frequent memory accesses to…

Hardware Architecture · Computer Science 2026-05-14 Shien Zhu , Gustavo Alonso

Next-generation artificial intelligence (AI) workloads are posing challenges of scalability and robustness in terms of execution time due to their intrinsic evolving data-intensive characteristics. In this paper, we aim to analyse the…

Hardware Architecture · Computer Science 2025-02-13 Mariam Musavi , Emmanuel Irabor , Abhijit Das , Eduard Alarcon , Sergi Abadal

We present "Reciprocating Locks", a novel mutual exclusion locking algorithm, targeting cache-coherent shared memory (CC), that enjoys a number of desirable properties. The doorway arrival phase and the release operation both run in…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-07-14 Dave Dice , Alex Kogan

Sharding is used to address the performance and scalability issues of the blockchain protocols, which divides the overall transaction processing costs among multiple clusters of nodes. Shards require less storage capacity and communication…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-03-31 Ramesh Adhikari , Costas Busch

Correct concurrent programs are difficult to write; when multiple threads mutate shared data, they may lose writes, corrupt data, or produce erratic program behavior. While many of the data-race issues with concurrency can be avoided by the…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-04-30 Aditya Saligrama , Andrew Shen , Jon Gjengset