跟专家聊了一下谷歌这个算法,其设计假设内存分布具备可预测性,但实际工程中,输入干扰与旋转矩阵计算会破坏内存连续性,使得动态变化的kvcache空间分布与查表的对应关系逐渐失配,信息丢失不断累积,最终造成模型精度损耗。
此外,该算法是为谷歌定向优化的,若要在NV系统结构上落地,需单独开发CUDA kernel,实现过程较为繁琐,而NV本身已有自研的压缩技术,其不均匀向量计算等于要修改整个cuda最底层的均匀向量计算逻辑,不太现实。
这类内存压缩算法虽为行业发展趋势,但因与底层系统结构、上层计算框架深度耦合,难以形成通用方案,最终各厂商只能结合自身体系定制化实现。
总结下来就是谷歌有可能在特定任务引入,但是在通用上不行,因为你需要在最后一公里压缩和正确率上取舍。压缩是趋势,但是他也有极限,不能扔掉有效信息。效率的提升最后都是提升需求,就像ds说不要算力最后刺激了算力需求二次爆发。