我最近偶然看到了有关一篇论文,介绍了Pollard's Rho算法的并行化,鉴于我的具体应用场景以及我尚未达到所需的数学水平,我想知道这种特定的并行化方法是否对我的情况有帮助。
我正在试图找到一个非常大的数字的两个因子——半素数。根据我所能理解的论文的内容,我的假设是这种并行化方法对于具有许多较小因子的数字效果很好,而不是对于两个非常大的因子。
这是真的吗?我该使用这种并行化还是使用其他方法?我甚至应该使用Pollard's Rho算法吗,还是有更好的并行化因数分解算法?
我最近偶然看到了有关一篇论文,介绍了Pollard's Rho算法的并行化,鉴于我的具体应用场景以及我尚未达到所需的数学水平,我想知道这种特定的并行化方法是否对我的情况有帮助。
我正在试图找到一个非常大的数字的两个因子——半素数。根据我所能理解的论文的内容,我的假设是这种并行化方法对于具有许多较小因子的数字效果很好,而不是对于两个非常大的因子。
这是真的吗?我该使用这种并行化还是使用其他方法?我甚至应该使用Pollard's Rho算法吗,还是有更好的并行化因数分解算法?
Number Original code Brent's modification
18446744073709551617 26 ms 5 ms
10023859281455311421 109 ms 31 ms
2^16
(5个十进制数字)到2^8192
(2467个十进制数字)不等。我猜我可能会使用许多不同的算法,取决于数字的大小,但我不确定。我知道Pollard-rho是一种专门的算法,但我没有找到其他算法的并行化,所以我有点困难。 - skeggse2^8192
是理论上的上限,但我不指望能够分解任何那么大的数。 - skeggse