首页> 外文会议>IEEE International Conference on Data Engineering Workshops >Exploiting Automatic Vectorization to Employ SPMD on SIMD Registers
【24h】

Exploiting Automatic Vectorization to Employ SPMD on SIMD Registers

机译:利用自动矢量化在SIMD寄存器上使用SPMD

获取原文

摘要

Over the last years, vectorized instructions have been successfully applied to accelerate database algorithms. However, these instructions are typically only available as intrinsics and specialized for a particular hardware architecture or CPU model. As a result, today's database systems require a manual tailoring of database algorithms to the underlying CPU architecture to fully utilize all vectorization capabilities. In practice, this leads to hard-to-maintain code, which cannot be deployed on arbitrary hardware platforms. In this paper, we utilize ispc as a novel compiler that employs the Single Program Multiple Data (SPMD) execution model, which is usually found on GPUs, on the SIMD lanes of modern CPUs. ispc enables database developers to exploit vectorization without requiring low-level details or hardware-specific knowledge. To enable ispc for database developers, we study whether ispc's SPMD-on-SIMD approach can compete with manually-tuned intrinsics code. To this end, we investigate the performance of a scalar, a SIMD-based, and a SPMD-based implementation of a column scan, a database operator widely used in main-memory database systems. Our experimental results reveal that, although the manually-tuned intrinsics code slightly outperforms the SPMD-based column scan, the performance differences are small. Hence, developers may benefit from the advantages of SIMD parallelism through ispc, while supporting arbitrary hardware architectures without hard-to-maintain code.
机译:在过去几年中,已成功应用了矢量化指令以加速数据库算法。但是,这些指令通常仅用为内在机构,专门用于特定的硬件架构或CPU模型。因此,今天的数据库系统需要将数据库算法的手动剪裁到底层CPU架构,以充分利用所有矢量化功能。在实践中,这导致难以维护的代码,无法在任意硬件平台上部署。在本文中,我们利用ISPC作为一种新颖的编译器,该编译器采用单个程序多个数据(SPMD)执行模型,该模型通常在GPU上找到现代CPU的SIMD车道。 ISPC使数据库开发人员能够利用矢量化而不需要低级详细信息或特定于硬件的知识。要使ISPC用于数据库开发人员,我们研究ISPC的SPMD-On-SIMD方法是否可以与手动调整的内在码竞争。为此,我们调查标量,基于SIMD和基于SPMD的基于SPMD的执行,该数据库运算符广泛应用于主内存数据库系统。我们的实验结果表明,虽然手动调谐的内在码略高于基于SPMD的柱扫描,但性能差异很小。因此,开发人员可以通过ISPC从SIMD并行性的优势中受益,同时支持任意硬件架构,而无需难以维护代码。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号