ACM DL

Parallel Computing (TOPC)

Menu

Search Issue
enter search term and/or author name

Archive


ACM Transactions on Parallel Computing, Volume 2 Issue 2, July 2015

Remote Memory Access Programming in MPI-3
Torsten Hoefler, James Dinan, Rajeev Thakur, Brian Barrett, Pavan Balaji, William Gropp, Keith Underwood
Article No.: 9
DOI: 10.1145/2780584

The Message Passing Interface (MPI) 3.0 standard, introduced in September 2012, includes a significant update to the one-sided communication interface, also known as remote memory access (RMA). In particular, the interface has been extended to...

Supporting Time-Based QoS Requirements in Software Transactional Memory
Walther Maldonado, Patrick Marlier, Pascal Felber, Julia Lawall, Gilles Muller, Etienne Rivière
Article No.: 10
DOI: 10.1145/2779621

Software transactional memory (STM) is an optimistic concurrency control mechanism that simplifies parallel programming. However, there has been little interest in its applicability to reactive applications in which there is a required response...

TRADE: Precise Dynamic Race Detection for Scalable Transactional Memory Systems
Gokcen Kestor, Osman S. Unsal, Adrian Cristal, Serdar Tasiran
Article No.: 11
DOI: 10.1145/2786021

As other multithreaded programs, transactional memory (TM) programs are prone to race conditions. Previous work focuses on extending existing definitions of data race for lock-based applications to TM applications, which requires all transactions...

Time-Warp: Efficient Abort Reduction in Transactional Memory
Nuno Diegues, Paolo Romano
Article No.: 12
DOI: 10.1145/2775435

The multicore revolution that took place one decade ago has turned parallel programming into a major concern for the mainstream software development industry. In this context, Transactional Memory (TM) has emerged as a simpler and attractive...

Parallel Scheduling of Task Trees with Limited Memory
Lionel Eyraud-Dubois, Loris Marchal, Oliver Sinnen, Frédéric Vivien
Article No.: 13
DOI: 10.1145/2779052

This article investigates the execution of tree-shaped task graphs using multiple processors. Each edge of such a tree represents some large data. A task can only be executed if all input and output data fit into memory, and a data can only be...