是否有任何软件工具可以并行执行非常大的数字运算?我的意思是并行是我想在我的计算机上使用所有可用的核心。
这些限制对我来说是敞开的。我不介意尝试任何语言或技术。
请和谢谢。
答案 0 :(得分:1)
您似乎要么划分非常大的数字,要么使用次优算法。将事物并行化到固定数量的核心只会调整常量,但不会影响操作的渐近行为。如果您正在谈论单个部门的工作时间,渐近行为是最重要的。所以我建议你首先确保你的渐近复杂度尽可能好,然后然后开始寻找改进常量的方法,也许是通过并行化。
Wikipedia建议巴雷特师,GMP has a variant of that。我不确定你到目前为止所尝试的是否达到了类似的水平,但除非你确定是这样,否则我会尝试GMP。
有关最近的研究,另请参阅Parallel Modular Multiplication on Multi-core Processors。但是,哈文自己也没读过。
答案 1 :(得分:0)
我所知道的唯一努力是名为CUMP的CUDA库。但是,该库仅提供加法,减法和乘法的支持。无论如何,您可以使用乘法在GPU上执行除法,并检查结果的质量是否足以满足您的特定问题。