使用 MPI 将 GMP 代码转换为并行代码

Convert GMP code into Parallel using MPI

我在 GMP 中有一个用于椭圆曲线离散对数问题 (ECDLP) 的 Pollard Rho 代码,我想使用 MPI 对其进行并行化。请指导我是否可以在同一 C 代码中同时使用这两个库,或者我是否必须将我的整个代码转换为 MPI 语法。

GMP 是一个 multi-precision 算法库。

MPI 是一个库和一组工具,使您能够 运行 在不同的进程中使用您的代码(虽然某些版本的 MPI 使用线程,但这并不常见)。

由于进程不共享内存,您在一个进程中使用 GMP 所做的任何事情都不会影响另一个进程。

您唯一担心的是 GMP 正在执行某种内部多线程来加快速度(我认为它不会)。如果是这样,请在 MPI 中分配比其他方式更少的进程或禁用 GMP 的多线程。