软件层面,在语言层面上,ZK更友好的格式,也会带来加速生成的过程,比如Aleo的Leo语言。再就是算法本身的优化,虽然说有一定的优化空间,但是要想有大的突破需要非常多的时间,毕竟牵涉到很多数学问题。
证明生成的过程中,约有60%的时间花在MSM上,其余时间由NTT/FTT主导。MSM和NTT都存在性能挑战,通常的解决办法:
●MSM可以在多线程上执行,从而支持并行处理。然而,当处理大型数据向量时,例如6700万个参数,乘法运算可能仍然很慢,并且需要大量的内存资源。此外,MSM存在可扩展性方面的挑战,即使在广泛并行化的情况下也可能保持缓慢。
综上来看,内存和带宽是限制证明生成的主要瓶颈。对于显卡来说,这里的内存指的是显存,并不是主板上的内存,主板上的内存主要是参与CPU的计算。当然目前有些芯片技术可以打通主板上的内存和显存,让内存为显存计算来用。
早在2021年,英伟达就曾公开表示过“禁止使用转换层在其他硬件平台上运行基于CUDA的软件”,2024年3月,英伟达更是将其升级为“CUDA禁令”,直接添加在了CUDA的终用户许可协议中,已禁止用转译层在其他GPU上运行CUDA软件