Scaling read aligners to hundreds of threads on general-purpose processors

B Langmead, C Wilks, V Antonescu, R Charles - Bioinformatics, 2019 - academic.oup.com
Motivation General-purpose processors can now contain many dozens of processor cores
and support hundreds of simultaneous threads of execution. To make best use of these …

Bug report, feature request, or simply praise? on automatically classifying app reviews

W Maalej, H Nabil - 2015 IEEE 23rd international requirements …, 2015 - ieeexplore.ieee.org
App stores like Google Play and Apple AppStore have over 3 Million apps covering nearly
every kind of software and service. Billions of users regularly download, use, and review …

Cache coherence in large-scale shared-memory multiprocessors: Issues and comparisons

DJ Lilja - ACM Computing Surveys (CSUR), 1993 - dl.acm.org
Due to data spreading among processors and due to the cache coherence problem, private
data caches have not been as effective in reducing the average memory delay in …

Transactional memory: Architectural support for lock-free data structures

M Herlihy, JEB Moss - Proceedings of the 20th annual international …, 1993 - dl.acm.org
A shared data structure is lock-free if its operations do not require mutual exclusion. If one
process is interrupted in the middle of an operation, other processes will not be prevented …

Algorithms for scalable synchronization on shared-memory multiprocessors

JM Mellor-Crummey, ML Scott - ACM Transactions on Computer …, 1991 - dl.acm.org
Busy-wait techniques are heavily used for mutual exclusion and barrier synchronization in
shared-memory parallel programs. Unfortunately, typical implementations of busy-waiting …

[PDF][PDF] Software transactional memory

N Shavit, D Touitou - Proceedings of the fourteenth annual ACM …, 1995 - dl.acm.org
As we learn from the literature, flexibility in choosing synchroni~ ation operations greatly
simplifies the task of designing highly concurrent programs. Unfortunately, existing hardware …

[PDF][PDF] Simple, fast, and practical non-blocking and blocking concurrent queue algorithms

MM Michael, ML Scott - Proceedings of the fifteenth annual ACM …, 1996 - dl.acm.org
Drawing ideas from previous authors, we present a new non-blocking concurrent queue
algorithm and a new twolock queue algorithm in which one enqueue and one dequeue can …

{OSv—Optimizing} the Operating System for Virtual Machines

A Kivity, D Laor, G Costa, P Enberg, N Har'El… - 2014 usenix annual …, 2014 - usenix.org
Virtual machines in the cloud typically run existing general-purpose operating systems such
as Linux. We notice that the cloud's hypervisor already provides some features, such as …

Everything you always wanted to know about synchronization but were afraid to ask

T David, R Guerraoui, V Trigonakis - Proceedings of the Twenty-Fourth …, 2013 - dl.acm.org
This paper presents the most exhaustive study of synchronization to date. We span multiple
layers, from hardware cache-coherence protocols up to high-level concurrent software. We …

A methodology for implementing highly concurrent data objects

M Herlihy - ACM Transactions on Programming Languages and …, 1993 - dl.acm.org
A concurrent object is a data structure shared by concurrent processes. Conventional
techniques for implementing concurrent objects typically rely on critical sections; ensuring …