MPI程序的开始和结束必须是 MPI_INIT 和 MPI_FINALIZE,分别完成MPI程序的初始化和结束工作 就是说:MPI_INIT用来开始MPI,MPI_FINALIZE用来结束MPI。 MPI_COMM_RANK得到当前正在运行的进程的标识号,放在myid中;MPI_COMM_SIZE得到所有参加运算的进程的个数,放在numprocs中;MPI_GET_
获取当前进程的秩 call MPI_COMM_RANK(MPI_COMM_WORLD, rank, ierr) if (ierr /= MPI_SUCCESS) then write(*,*) 'Error: MPI_COMM_RANK failed' stop endif ! 获取总进程数 call MPI_COMM_SIZE(MPI_COMM_WORLD, num_procs, ierr) if (ierr /= MPI_SUCCESS) then write(*,*) 'Error: MPI_...
以下代码展示了如何在Fortran中使用MPI对数组求和进行分布式计算。 fortran 复制代码 program mpi_sum use mpi implicit none integer :: ierr, rank, size, i, n, local_n real, allocatable :: a(:), local_a(:) real :: local_sum, total_sum call MPI_Init(ierr) call MPI_Comm_rank(MPI_COMM_WO...
integer :: ierr, rank, size, n, i real, dimension(:), allocatable :: a, b, c, local_a, local_b, local_c ! 初始化MPI环境 call MPI_Init(ierr) call MPI_Comm_rank(MPI_COMM_WORLD, rank, ierr) call MPI_Comm_size(MPI_COMM_WORLD, size, ierr) n = 1000000 / size ! 分配局部数组...
MPI_COMM_SIZE(COMM,np,ierr)获得总进程数np 为 integer 型变量,返回COMM通讯子中进程总数。ierr ,程序正确运行时返回 0 。 MPI_GET_ProcESSOR_NAME(processor_name,namelength,ierr)获得运行本进程的机器的机器名和机器名长度。processor_name 为 character 型变量,返回运行本进程的机器名。namelength 为 integer...
call MPI_COMM_SIZE(MPI_COMM_WORLD, size, ierror)call MPI_COMM_RANK(MPI_COMM_WORLD, rank, i...
subroutine mpi_start(front,next,COMM,np,myid,ierr)integer :: front,next integer :: COMM,np,myid,ierr call MPI_INIT(ierr)call MPI_COMM_DUP(MPI_COMM_WORLD,COMM,ierr)call MPI_COMM_RANK(COMM,myid,ierr)call MPI_COMM_SIZE(COMM,np,ierr)next=mod(myid+1,np)front=mod(myid+np-1,np)end su...
Fortran是一种高级编程语言,主要用于科学计算和数值分析。MPI(Message Passing Interface)是一种用于并行计算的通信协议和编程模型。Fortran MPI运行时错误是指在...
在Fortran代码中使用MPI进行并行计算,通常需要遵循以下步骤: 引入MPI库:在程序开始时,使用include 'mpif.h'或use mpi语句引入MPI库。 初始化MPI环境:使用MPI_Init函数初始化MPI环境。 获取进程信息:使用MPI_Comm_rank和MPI_Comm_size函数获取当前进程的排名和总进程数。 执行并行计算:根据进程排名和总进程数分配计算...
integer :: i, rank, size, ierr ! MPI 初始化 call MPI_Init(ierr) call MPI_Comm_rank(MPI_COMM_WORLD, rank, ierr) call MPI_Comm_size(MPI_COMM_WORLD, size, ierr) ! 计算每个进程的局部和 local_sum = 0.0 do i = 1 + rank, n, size ...