gpt4 book ai didi

c - 如何乘以 TB 大小的数字?

转载 作者:太空狗 更新时间:2023-10-29 16:28:55 26 4
gpt4 key购买 nike

当乘以非常大的数字时,您使用基于 FFT 的乘法(参见 Schönhage–Strassen algorithm)。出于性能原因,我正在缓存旋转因子。问题是对于巨大的数字(千兆字节大小)我需要大小为 2^30 或更大的 FFT 表,它们占用太多 RAM(16 GB 及以上)。所以看来我应该使用另一种算法。

有一个叫y-cruncher的软件,用来计算Pi和其他常量,可以乘以TB级的数字。它使用一种称为 Hybrid NTT 的算法和另一种称为 VST 的算法(请参阅 VST 乘法算法 部分中的 A Peak into y-cruncher v0.6.1)。

谁能阐明这些算法或任何其他可用于乘以 TB 大小的数字的算法?

最佳答案

FFT 可以在具有恒定数量的额外内存的同一阵列上完成(可能需要巧妙地交换数量)。因此它也可以在硬盘上完成。在最坏的情况下,它是 log(N)*N 次磁盘访问。这似乎比在 RAM 上执行要慢很多,但总体复杂性保持不变。

关于c - 如何乘以 TB 大小的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28799174/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com