Synchronization of concurrent threads is the central problem in order to design efficient concurrent data-structures. The compute systems widely available in market are increasingly becoming heterogeneous involving multi-core Central Processing Units (CPUs) and many-core Graphics Processing Units (GPUs). This thesis contributes to the research of efficient synchronization in concurrent data-structures in more than one way. It is divided into two parts. In the first part, a novel design of a Set Abstract Data Type (ADT) based on an efficient lock-free Binary Search Tree (BST) with improved amortized bounds of the time complexity of set operations - Add, Remove and Contains, is presented. In the second part, a comprehensive evaluation of conc...
Synchronization is a central issue in concurrency and plays an important role in the behavior and pe...
Multicore and many-core architectures have penetrated the vast majority of computing systems, from h...
To use the computational power of modern computing machines, we have to deal with concurrent program...
Synchronization of concurrent threads is the central problem in order to design efficient concurrent...
The multicore revolution means that programmers have many cores at their disposal in everything from...
As core counts increase and as heterogeneity becomes more common in parallel computing, we face the ...
Algorithms for concurrent data structure have gained attention in recent years as multi-core process...
The convergence of highly parallel many-core graphics processors with conventional multi-core proces...
Parallelism plays a significant role in high-performance computing systems, from large clusters of c...
In this paper we revisit the design of concurrent data structures -- specifically queues -- and exam...
Abstract. In this work, we study the scalability, performance, design and implementation of basic da...
Abstract. This paper proposes a new lock-based concurrent binary tree using a methodology for writin...
This paper investigates the synchronization power of coalesced memory accesses, a family of memory a...
Heterogeneous processors, consisting of CPU cores and an integrated GPU on the same die, are current...
The Single-chip Cloud Computer (SCC) is an experimental multicore processor created by Intel Labs fo...
Synchronization is a central issue in concurrency and plays an important role in the behavior and pe...
Multicore and many-core architectures have penetrated the vast majority of computing systems, from h...
To use the computational power of modern computing machines, we have to deal with concurrent program...
Synchronization of concurrent threads is the central problem in order to design efficient concurrent...
The multicore revolution means that programmers have many cores at their disposal in everything from...
As core counts increase and as heterogeneity becomes more common in parallel computing, we face the ...
Algorithms for concurrent data structure have gained attention in recent years as multi-core process...
The convergence of highly parallel many-core graphics processors with conventional multi-core proces...
Parallelism plays a significant role in high-performance computing systems, from large clusters of c...
In this paper we revisit the design of concurrent data structures -- specifically queues -- and exam...
Abstract. In this work, we study the scalability, performance, design and implementation of basic da...
Abstract. This paper proposes a new lock-based concurrent binary tree using a methodology for writin...
This paper investigates the synchronization power of coalesced memory accesses, a family of memory a...
Heterogeneous processors, consisting of CPU cores and an integrated GPU on the same die, are current...
The Single-chip Cloud Computer (SCC) is an experimental multicore processor created by Intel Labs fo...
Synchronization is a central issue in concurrency and plays an important role in the behavior and pe...
Multicore and many-core architectures have penetrated the vast majority of computing systems, from h...
To use the computational power of modern computing machines, we have to deal with concurrent program...