我们有一个用霍夫曼编码编码的数据库。这里的目的是在 GPU 上复制它及其相关的解码器;然后在 GPU 上,解码数据库并在这个解码的数据库上做一些事情,而不是在 CPU 上复制回来。
我远不是霍夫曼专家,但我知道的少数人表明它似乎是一种基本上基于控制结构的算法。有了基础算法,恐怕会出现很多序列化的操作。
我的两个问题是:
- 你知道是否存在任何用于霍夫曼编码的高效 GPU 版本
- 如果没有,您认为是否存在适用于 GPU 的 Huffman 算法(即控制结构较少)。或者您可能知道(并且您可以提供参考)高效的霍夫曼解码在 GPU 上效率不高。
我看到了其他限制,但它们并不重要: - GPU 无法非常有效地处理树:二叉树可以存储在经典数组中 - 工作负载可能难以平衡:我们稍后会看到