Architectural support for data-driven execution

9Citations
Citations of this article
20Readers
Mendeley users who have this article in their library.

Abstract

The exponential growth of sequential processors has come to an end, and thus, parallel processing is probably the only way to achieve performance growth. We propose the development of parallel architectures based on data-driven scheduling. Data-driven scheduling enforces only a partial ordering as dictated by the true data dependencies, which is the minimum synchronization possible. This is very beneficial for parallel processing because it enables it to exploit the maximum possible parallelism. We provide architectural support for data-driven execution for the Data-Driven Multithreading (DDM) model. In the past, DDM has been evaluated mostly inthe form of virtual machines. The main contribution of this workis the development of a highly efficient hardware support for data-driven execution and its integration into a multicore system with eight cores on a Virtex-6 FPGA. The DDM semantics make barriers and cache coherence unnecessary, which reduces the synchronization latencies significantly and makes the cache simpler. The performance evaluation has shown that the support for data-driven execution is very efficient with negligible overheads. Our prototype can support very small problem sizes (matrix 16×16) and ultra-lightweight threads (block of 4×4) that achieve speedups close to linear. Such results cannot be achieved by software-based systems.

Author supplied keywords

Cite

CITATION STYLE

APA

Matheou, G., & Evripidou, P. (2014). Architectural support for data-driven execution. ACM Transactions on Architecture and Code Optimization, 11(4). https://doi.org/10.1145/2686874

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free