0

当我在 OpenCL 中有一个内存缓冲区时,我知道我需要将其中的数据对齐到 16 字节边界。

但是,如果我的整个数据(不是数据结构,实际的数据集合)只有 15 个字节大,我该怎么办?
我应该把它放入一个 16 字节的大缓冲区还是一个 15 字节的缓冲区?
有性能差异吗?

4

1 回答 1

0

如果您要使用许多 15 字节数据结构并计划使用本地内存,我建议保留 15 字节结构并一次加载其中 16 个的倍数。我认为“许多”在您的工作组中至少是几 kb 的数据。这样做的原因是,当您为每 15 个字节牺牲额外的字节时,您会增加 6% 的传输开销。将大小保留为 15 还有助于在将数据写回内存(本地和全局内存)时避免存储库冲突。

有关银行冲突的更多信息。

于 2013-03-07T01:43:00.560 回答