如何通过MPI\U send发送gmp变量,如mpz\U t
此代码产生错误,请帮助我如何通过MPI_发送函数发送mpz_t变量。我在www.macs.hw.ac.uk/~hwloidl/Courses/F21DP/gph_milan15_handout.pdf中找到了一个演示文稿,在幻灯片86和88中,他们使用gmp_sprintf和gmp_anfsc将多精度整数编组到字符串中如何通过MPI\U send发送gmp变量,如mpz\U t,mpi,gmp,Mpi,Gmp,此代码产生错误,请帮助我如何通过MPI_发送函数发送mpz_t变量。我在www.macs.hw.ac.uk/~hwloidl/Courses/F21DP/gph_milan15_handout.pdf中找到了一个演示文稿,在幻灯片86和88中,他们使用gmp_sprintf和gmp_anfsc将多精度整数编组到字符串中 实际上,我注意到他们使用的是mpq\u t类型的有理数,但我想同样的方法也适用于mpz\u t。请提供详细的错误日志。 #include <stdio.h> #inc
实际上,我注意到他们使用的是mpq\u t类型的有理数,但我想同样的方法也适用于mpz\u t。请提供详细的错误日志。
#include <stdio.h>
#include <gmp.h>
#include <mpi.h>
int main(int *argc, char **argv)
{
int rank;
mpz_t a;
mpz_t b;
mpz_init(a);
mpz_init(b);
mpz_set_ui(a,23000000000000000000000000001);
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
if(rank==0)
{
MPI_Send(&a,1,MPI_INT,1,100,MPI_COMM_WORLD);
}
if(rank==1)
{
MPI_Recv(&b,1,MPI_INT,0,100,MPI_COMM_WORLD,MPI_STATUS_IGNORE);
}
MPI_Finalize();
return 1;
}