A survey on parallelism and determinism
Parallelism is often required for performance. In these situations an excess of non-
determinism is harmful as it means the program can have several different behaviours or …
determinism is harmful as it means the program can have several different behaviours or …
Batch-aware unified memory management in GPUs for irregular workloads
While unified virtual memory and demand paging in modern GPUs provide convenient
abstractions to programmers for working with large-scale applications, they come at a …
abstractions to programmers for working with large-scale applications, they come at a …
Block-stm: Scaling blockchain execution by turning ordering curse to a performance blessing
Block-STM is a parallel execution engine for smart contracts, built around the principles of
Software Transactional Memory. Transactions are grouped in blocks, and every execution of …
Software Transactional Memory. Transactions are grouped in blocks, and every execution of …
SIMD programming using Intel vector extensions
H Amiri, A Shahbahrami - Journal of Parallel and Distributed Computing, 2020 - Elsevier
Single instruction multiple data (SIMD) extensions are one of the most significant capabilities
of recent General Purpose Processors (GPPs) which improves the performance of …
of recent General Purpose Processors (GPPs) which improves the performance of …
T4: Compiling sequential code for effective speculative parallelization in hardware
Multicores are now ubiquitous, but programmers still write sequential code. Speculative
parallelization is an enticing approach to parallelize code while retaining the ease of …
parallelization is an enticing approach to parallelize code while retaining the ease of …
Adaptive parallel Louvain community detection on a multicore platform
Community detection is a demanded technique in analyzing complex and massive graph-
based networks. The quality of the detected communities in an acceptable time is an …
based networks. The quality of the detected communities in an acceptable time is an …
Parallel computing: review and perspective
Y Li, Z Zhang - … Conference on Information Science and Control …, 2018 - ieeexplore.ieee.org
As parallelism on different levels becomes ubiquitous in today's computers, it seems
worthwhile to provide a review of the wealth of every aspect of parallel computing that has …
worthwhile to provide a review of the wealth of every aspect of parallel computing that has …
Harmonizing speculative and non-speculative execution in architectures for ordered parallelism
Multicore systems should support both speculative and non-speculative parallelism.
Speculative parallelism is easy to use and is crucial to scale many challenging applications …
Speculative parallelism is easy to use and is crucial to scale many challenging applications …
Specx: a C++ task-based runtime system for heterogeneous distributed architectures
P Cardosi, B Bramas - arXiv preprint arXiv:2308.15964, 2023 - arxiv.org
Parallelization is needed everywhere, from laptops and mobile phones to supercomputers.
Among parallel programming models, task-based programming has demonstrated a …
Among parallel programming models, task-based programming has demonstrated a …
SAM: Optimizing multithreaded cores for speculative parallelism
M Abeydeera, S Subramanian… - 2017 26th …, 2017 - ieeexplore.ieee.org
This work studies the interplay between multithreaded cores and speculative parallelism
(eg, transactional memory or thread-level speculation). These techniques are often used …
(eg, transactional memory or thread-level speculation). These techniques are often used …