在现代多核和多核芯片上比较不同x86 SIMD指令集在医学成像应用中的性能

WPMVP '14 Pub Date : 2014-01-29 DOI:10.1145/2568058.2568068
Johannes Hofmann, Jan Treibig, G. Hager, G. Wellein
{"title":"在现代多核和多核芯片上比较不同x86 SIMD指令集在医学成像应用中的性能","authors":"Johannes Hofmann, Jan Treibig, G. Hager, G. Wellein","doi":"10.1145/2568058.2568068","DOIUrl":null,"url":null,"abstract":"Single Instruction, Multiple Data (SIMD) vectorization is a major driver of performance in current architectures, and is mandatory for achieving good performance with codes that are limited by instruction throughput. We investigate the efficiency of different SIMD-vectorized implementations of the RabbitCT benchmark. RabbitCT performs 3D image reconstruction by back projection, a vital operation in computed tomography applications. The underlying algorithm is a challenge for vectorization because it consists, apart from a streaming part, also of a bilinear interpolation requiring scattered access to image data. We analyze the performance of SSE (128 bit), AVX (256 bit), AVX2 (256 bit), and IMCI (512 bit) implementations on recent Intel x86 systems. A special emphasis is put on the vector gather implementation on Intel Haswell and Knights Corner microarchitectures. Finally we discuss why GPU implementations perform much better for this specific algorithm.","PeriodicalId":411100,"journal":{"name":"WPMVP '14","volume":"16 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-01-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"46","resultStr":"{\"title\":\"Comparing the performance of different x86 SIMD instruction sets for a medical imaging application on modern multi- and manycore chips\",\"authors\":\"Johannes Hofmann, Jan Treibig, G. Hager, G. Wellein\",\"doi\":\"10.1145/2568058.2568068\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Single Instruction, Multiple Data (SIMD) vectorization is a major driver of performance in current architectures, and is mandatory for achieving good performance with codes that are limited by instruction throughput. We investigate the efficiency of different SIMD-vectorized implementations of the RabbitCT benchmark. RabbitCT performs 3D image reconstruction by back projection, a vital operation in computed tomography applications. The underlying algorithm is a challenge for vectorization because it consists, apart from a streaming part, also of a bilinear interpolation requiring scattered access to image data. We analyze the performance of SSE (128 bit), AVX (256 bit), AVX2 (256 bit), and IMCI (512 bit) implementations on recent Intel x86 systems. A special emphasis is put on the vector gather implementation on Intel Haswell and Knights Corner microarchitectures. Finally we discuss why GPU implementations perform much better for this specific algorithm.\",\"PeriodicalId\":411100,\"journal\":{\"name\":\"WPMVP '14\",\"volume\":\"16 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2014-01-29\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"46\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"WPMVP '14\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2568058.2568068\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"WPMVP '14","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2568058.2568068","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 46

摘要

单指令多数据(SIMD)矢量化是当前体系结构中性能的主要驱动因素,并且对于受指令吞吐量限制的代码实现良好性能是必需的。我们研究了不同simd矢量化实现的RabbitCT基准的效率。RabbitCT通过反向投影进行三维图像重建,这是计算机断层扫描应用中的重要操作。底层算法对矢量化来说是一个挑战,因为除了流部分之外,它还包括需要分散访问图像数据的双线性插值。我们分析了SSE(128位)、AVX(256位)、AVX2(256位)和IMCI(512位)在最新的Intel x86系统上的性能。特别强调了在Intel Haswell和Knights Corner微架构上的矢量采集实现。最后,我们讨论了为什么GPU实现在这种特定算法中表现得更好。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Comparing the performance of different x86 SIMD instruction sets for a medical imaging application on modern multi- and manycore chips
Single Instruction, Multiple Data (SIMD) vectorization is a major driver of performance in current architectures, and is mandatory for achieving good performance with codes that are limited by instruction throughput. We investigate the efficiency of different SIMD-vectorized implementations of the RabbitCT benchmark. RabbitCT performs 3D image reconstruction by back projection, a vital operation in computed tomography applications. The underlying algorithm is a challenge for vectorization because it consists, apart from a streaming part, also of a bilinear interpolation requiring scattered access to image data. We analyze the performance of SSE (128 bit), AVX (256 bit), AVX2 (256 bit), and IMCI (512 bit) implementations on recent Intel x86 systems. A special emphasis is put on the vector gather implementation on Intel Haswell and Knights Corner microarchitectures. Finally we discuss why GPU implementations perform much better for this specific algorithm.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信