首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OpenCL vloadn casting

OpenCL vloadn casting
EN

Stack Overflow用户
提问于 2013-10-31 02:19:04
回答 2查看 879关注 0票数 0

我使用OpenCL优化算法,我想对内核进行矢量化。在数据对齐的情况下,vloadn / vstoren比简单地转换为所需的向量慢吗?

EN

回答 2

Stack Overflow用户

发布于 2013-10-31 07:06:58

据我所知,vloadn / vstoren没有提供更快的访问速度。它只提供访问内存的助手功能。

票数 0
EN

Stack Overflow用户

发布于 2013-11-04 20:20:16

http://www.khronos.org/registry/cl/specs/opencl-1.1.pdf

规格是你的朋友。

基本上,强制转换和vloadn之间的唯一区别是vloadn允许您执行未对齐的加载(与向量大小不对齐,基元必须对齐)。如果对float4执行简单强制转换,则指针必须与4*sizeof(浮点数)边界对齐。如果对float4执行vloadn,则指针必须与sizeof(浮点数)边界对齐。

因此,人们可能会期望纯强制转换会更快,因为它根本不需要检查对齐,而且在任何情况下,纯强制转换都不可能更慢,除非实现被be。

在数据对齐的情况下,tl;dr: vloadn可能比直接转换慢。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19690835

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档