使用Stencil评估Intel AVX2 Vgather指令
发布时间:2018-01-28 02:56
本文关键词: AVX vgather指令 Stencil 性能评估 出处:《计算机科学》2017年01期 论文类型:期刊论文
【摘要】:为了更好地在向量化时读取离散的数据,Intel在Haswell CPU提供了AVX2vgather指令。由于Stencil在设置边界条件时使用了条件判断,因此编译器生成了vgather指令,并降低了Stencil在Haswell上的性能。提出使用peel优化或intrinsic load的方法来避免vgather指令的生成,并把该方法应用到3个Stencil基准算例、长程Stencil程序3DFD以及混合Stencil应用3DEW上。这些Stencil在Haswell上的性能都获得了1.22X至3.88X不等的提升。通过研究指令的实现,发现vgather指令会被解码成多个微操作(μops),并为每个要读入的元素生成一个μops。由于vgather指令解码时会产生较高的开销,导致vgather指令成为Stencil在Haswell上的性能瓶颈。了解AVX2 vgather指令的实现以及掌握避免生成vgather指令的优化方法,对在Haswell上调优具有良好空间局部性应用的性能有一定的参考价值。
[Abstract]:To better read discrete data at vectorization. Intel provides the AVX2vgather instruction in Haswell CPU because Stencil uses conditional judgment when setting boundary conditions. So the compiler generates the vgather directive. It also reduces the performance of Stencil on Haswell. A method of peel optimization or intrinsic load is proposed to avoid the generation of vgather instructions. The method is applied to three Stencil benchmark examples. The long range Stencil program 3DFD and the hybrid Stencil application 3DEW. The performance of these Stencil on Haswell achieved 1.22X to 3.88X. Unequal ascension. Through the implementation of research instructions. It is found that the vgather instruction will be decoded into a plurality of microoperations (渭 OPS), and a 渭 op s will be generated for each element to be read. Because of the high cost of decoding the vgather instruction. Causes the vgather instruction to become a performance bottleneck for Stencil on Haswell. Learn about AVX2. The realization of vgather instruction and the optimization method to avoid generating vgather instruction. It has certain reference value for the performance of good spatial local application in the Haswell upregulation.
【作者单位】: 上海交通大学高性能计算中心;东京工业大学学术国际情报中心;Intel公司软件与服务部门;
【基金】:国家重点研发计划(2014AA01A302,2016YFB0201800) 日本学术振兴会RONPAKU Fellowship资助
【分类号】:TP332;TP314
【正文快照】: 1简介 为了更好地在向量化时读取离散的数据,Intel陆续在不同平台上提供了硬件支持的vgather指令:2013年上半年发布的Knight Corner(缩写为KNC)上的IMCI(Initial Many Core Instructions)vgather指令;2013年6月发布的Haswell(缩写为HSW)CPU上的AVX(Advanced Vector Extension
【相似文献】
相关期刊论文 前10条
1 洪龙;陈燕俐;朱梧i,
本文编号:1469570
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/1469570.html