Data-Driven Thread Execution on Heterogeneous Processors
نوع المنشور
بحث أصيل
المؤلفون
النص الكامل
تحميل

In this paper we report our experience in implementing and evaluating the Data-Driven Multithreading (DDM) model on a heterogeneous multi-core processor. DDM is a non-blocking multithreading model that decouples the synchronization from the computation portions of a program, allowing them to execute asynchronously in a dataflow manner. Thread dependencies are determined by the compiler/programmer while thread scheduling is done dynamically at runtime based on data availability. The target processor for this implementation is the Cell processor. We call this implementation the Data-Driven Multithreading Virtual Machine for the Cell processor (DDM-VMcVMc). Thread scheduling is handled in software by the Power Processing Element core of the Cell while the Synergistic Processing Element cores execute the program threads. DDM-VMcVMc virtualizes the parallel resources of the Cell, handles the heterogeneity of the cores, manages the Cell memory hierarchy efficiently and supports distributed execution across a cluster of Cell nodes. DDM-VMcVMc has been implemented on a single Cell processor with six computation cores, as well as, on a four Cell processor cluster with 24 computation cores. We present an in-depth performance analysis of DDM-VMcVMc, using a suite of standard computational benchmarks. The evaluation shows that DDM-VMcVMc scales well and tolerates scheduling overheads, memory and communication latencies effectively. Furthermore, DDM-VMcVMc compares favorably with other platforms targeting the Cell processor, such as, the CellSs and Sequoia.

المجلة
العنوان
International Journal of Parallel Programming
الناشر
Springer New York LLC
بلد الناشر
الولايات المتحدة الأمريكية
Indexing
Thomson Reuters
معامل التأثير
1,156
نوع المنشور
إلكتروني فقط
المجلد
45
السنة
2017
الصفحات
198–224