我正在使用 CUDA/推力/CUDPP。据我了解,在流压缩中,数组中的某些项目被标记为无效,然后被“删除”。
现在“删除”在这里的真正含义是什么?假设原始数组A
的长度为 6。如果 2 个元素无效(无论我们提供什么条件),那么
系统是否在 GPU 内存中创建一个大小为 4 的新数组来存储有效元素以获得最终结果?
或者它是否从内存中物理删除无效元素并将原始数组 A 缩小到 4 大小,只保留有效元素?
无论哪种情况,这是否意味着动态内存分配正在幕后发生?但我听说动态内存分配在 CUDA 世界中是不可能的。