Affiliation:
1. National Cheng Kung University, Taiwan
Abstract
Single-instruction multiple-thread (SIMT) machine emerges as a primary computing device in high-perfor-mance computing, since the SIMT execution paradigm can exploit data-level parallelism effectively. This article explores the SIMT execution potential on homogeneous multi-core processors, which generally run in multiple-instruction multiple-data (MIMD) mode when utilizing the multi-core resources. We address three architecture issues in enabling SIMT execution model on multi-core processor, including multithreading execution model, kernel thread context placement, and thread divergence. For the SIMT execution model, we propose a fine-grained multithreading mechanism on an ARM-based multi-core system. Each of the processor cores stores the kernel thread contexts in its L1 data cache for per-cycle thread-switching requirement. For divergence-intensive kernels, an Inner Conditional Statement First (ICS-First) mechanism helps early re-convergence to occur and significantly improves the performance. The experiment results show that effectiveness in data-parallel processing reduces on average 36% dynamic instructions, and boosts the SIMT executions to achieve on average 1.52× and up to 5× speedups over the MIMD counterpart for OpenCL benchmarks for single issue in-order processor cores. By using the explicit vectorization optimization on the kernels, the SIMT model gains further benefits from the SIMD extension and achieves 1.71× speedup over the MIMD approach. The SIMT model using in-order superscalar processor cores outperforms the MIMD model that uses superscalar out-of-order processor cores by 40%. The results show that, to exploit data-level parallelism, enabling the SIMT model on homogeneous multi-core processors is important.
Funder
Ministry of Science and Technology, Taiwan
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture,Information Systems,Software
Reference44 articles.
1. Advanced Micro Devices Inc. 2017. AMD Accelerated Parallel Processing SDK. Retrieved from http://developer.amd.com/tools-and-sdks/opencl-zone/amd-accelerated-parallel-processing-app-sdk/. Advanced Micro Devices Inc. 2017. AMD Accelerated Parallel Processing SDK. Retrieved from http://developer.amd.com/tools-and-sdks/opencl-zone/amd-accelerated-parallel-processing-app-sdk/.
2. Cavium. 2017. Cavium ThunderX ARM Processors. Retrieved from http://www.cavium.com/ThunderX_ARM_Processors.html. Cavium. 2017. Cavium ThunderX ARM Processors. Retrieved from http://www.cavium.com/ThunderX_ARM_Processors.html.
3. Virtualization Technology for TCP/IP Offload Engine
4. Rodinia: A benchmark suite for heterogeneous computing
5. An OpenCL runtime system for a heterogeneous many-core virtual platform
Cited by
4 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Hardware accelerator based on SIMT programmable rasterization;2024 5th International Conference on Computer Engineering and Application (ICCEA);2024-04-12
2. COX : Exposing CUDA Warp-level Functions to CPUs;ACM Transactions on Architecture and Code Optimization;2022-09-16
3. Streamlining the OpenMP Programming Model on Ultra-Low-Power Multi-core MCUs;Architecture of Computing Systems;2021
4. Supporting Irregularity in Throughput-Oriented Computing by SIMT-SIMD Integration;2020 IEEE/ACM 10th Workshop on Irregular Applications: Architectures and Algorithms (IA3);2020-11