硬件層面,也就是所謂的硬件加速, CPU、GPU、FPGA、ASIC。CPU與GPU相比在大數據多任務處理上,肯定GPU更占優(yōu)勢。FPGA與GPU相比,在兼顧了靈活性的基礎上,無論是計算能力和功耗性能上都要更強,缺點是性價比太低。ASIC是的,其他的硬件形態(tài)都是無法比擬的。
證明生成的過程中,約有60%的時間花在MSM上,其余時間由NTT/FTT主導。MSM和NTT都存在性能挑戰(zhàn),通常的解決辦法:
●MSM可以在多線程上執(zhí)行,從而支持并行處理。然而,當處理大型數據向量時,例如6700萬個參數,乘法運算可能仍然很慢,并且需要大量的內存資源。此外,MSM存在可擴展性方面的挑戰(zhàn),即使在廣泛并行化的情況下也可能保持緩慢。
●在算法過程中頻繁的數據混洗使得NTT難以在計算集群中分布,無法并行計算,并且由于需要從大型數據集中加載和卸載數據,在硬件上運行時需要大量帶寬。即使硬件操作很快,這可能也會導致速度變慢。例如,如果硬件芯片的內存為16GB或更少,那么在100GB的數據集上運行NTT將需要通過網絡加載和卸載數據,這可能會大大降低操作速度。
綜上來看,內存和帶寬是限制證明生成的主要瓶頸。對于顯卡來說,這里的內存指的是顯存,并不是主板上的內存,主板上的內存主要是參與CPU的計算。當然目前有些芯片技術可以打通主板上的內存和顯存,讓內存為顯存計算來用。