The tao of parallelism in algorithms

K Pingali, D Nguyen, M Kulkarni, M Burtscher… - Proceedings of the …, 2011 - dl.acm.org
For more than thirty years, the parallel programming community has used the dependence
graph as the main abstraction for reasoning about and exploiting parallelism in" regular" …

Internally deterministic parallel algorithms can be fast

GE Blelloch, JT Fineman, PB Gibbons… - Proceedings of the 17th …, 2012 - dl.acm.org
The virtues of deterministic parallelism have been argued for decades and many forms of
deterministic parallelism have been described and analyzed. Here we are concerned with …

A survey on thread-level speculation techniques

A Estebanez, DR Llanos… - ACM Computing Surveys …, 2016 - dl.acm.org
Thread-Level Speculation (TLS) is a promising technique that allows the parallel execution
of sequential code without relying on a prior, compile-time-dependence analysis. In this …

ECROs: building global scale systems from sequential code

K De Porre, C Ferreira, N Preguiça… - Proceedings of the ACM …, 2021 - dl.acm.org
To ease the development of geo-distributed applications, replicated data types (RDTs) offer
a familiar programming interface while ensuring state convergence, low latency, and high …

Automated Verification of Fundamental Algebraic Laws

G Zakhour, P Weisenburger… - Proceedings of the ACM on …, 2024 - dl.acm.org
Algebraic laws of functions in mathematics–such as commutativity, associativity, and
idempotence–are often used as the basis to derive more sophisticated properties of complex …

Parallel graph analytics

A Lenharth, D Nguyen, K Pingali - Communications of the ACM, 2016 - dl.acm.org
Parallel graph analytics Page 1 78 COMMUNICATIONS OF THE ACM | MAY 2016 | VOL. 59 |
NO. 5 contributed articles DOI:10.1145/2901919 Data-centric abstractions and execution …

A framework for enhancing data reuse via associative reordering

K Stock, M Kong, T Grosser, LN Pouchet… - Proceedings of the 35th …, 2014 - dl.acm.org
The freedom to reorder computations involving associative operators has been widely
recognized and exploited in designing parallel algorithms and to a more limited extent in …

Grail: Context-aware fixing of concurrency bugs

P Liu, O Tripp, C Zhang - Proceedings of the 22nd ACM SIGSOFT …, 2014 - dl.acm.org
Writing efficient synchronization for multithreaded programs is notoriously hard. The
resulting code often contains subtle concurrency bugs. Even worse, many bug fixes …

Type-aware transactions for faster concurrent code

N Herman, JP Inala, Y Huang, L Tsai, E Kohler… - Proceedings of the …, 2016 - dl.acm.org
It is often possible to improve a concurrent system's performance by leveraging the
semantics of its datatypes. We build a new software transactional memory (STM) around this …

Commutativity race detection

D Dimitrov, V Raychev, M Vechev, E Koskinen - ACM SIGPLAN Notices, 2014 - dl.acm.org
This paper introduces the concept of a commutativity race. A commutativity race occurs in a
given execution when two library method invocations can happen concurrently yet they do …