simd extensions were added to microprocessors in the mid '90s to speed-up data-parallel code by vectorization. Unfortunately, the simdprogramming model has barely evolved and the most efficient utilization is sti...
详细信息
ISBN:
(纸本)9781450340601
simd extensions were added to microprocessors in the mid '90s to speed-up data-parallel code by vectorization. Unfortunately, the simdprogramming model has barely evolved and the most efficient utilization is still obtained with elaborate intrinsics coding. As a consequence, several approaches to write efficient and portable simd code have been proposed. In this work, we evaluate current programmingmodels for the C++ language, which claim to simplify simdprogramming while maintaining high performance. The proposals were assessed by implementing two kernels: one standard floating-point benchmark and one real-world integerbasedc application, both highly data parallel. Results show that the proposed solutions perform well for the floating point kernel, achieving close to the maximum possible speed-up. For the real-world application, the programmingmodels exhibit significant performance gaps due to data type issues, missing template support and other problems discussed in this paper. Copyright is held by the owner/author(s).
暂无评论