当处理器数为4时,MPI_Comm_size命令总是返回单个进程。我在虚拟xUbuntu 16.04上使用MPI 3.2.1和CLion。仿真器 - VMWare。在vm设置中,处理器计数设置为4,xUbuntu中的nproc表示“4”。
这是whereis mpicc
的输出:
mpicc: /usr/local/bin/mpicc
我尝试用mpi 1。**,但它也做了同样的事情。怎么了?
这是CMakeLists.txt文件:
cmake_minimum_required(VERSION 3.8)
project(primes)
set(CMAKE_C_STANDARD 99)
set(SOURCE_FILES main.c)
add_executable(primes ${SOURCE_FILES})
set(CMAKE_C_COMPILER "/usr/local/bin/mpicc")
以下是代码的一部分:
int main(int argc, char* argv[]) {
...
int rank, tasksCount;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &tasksCount);
UPD 通过控制台运行:
kamo@kamo:~/prog/primes$ mpicc -o main.o main.c
kamo@kamo:~/prog/primes$ mpiexec -np 4 ./mail.o
什么都没有。什么都没发生,没有任何东西写入控制台。只是没有“kamo @ kamo:〜/ prog / primes $”前缀的新行。
答案 0 :(得分:0)
我从一开始就尝试过,但效果很好。
CLION调试器工作错误,所以你应该使用我的问题的UPD块中描述的mpicc + mpiexec命令。