0
MPI_Comm_size 명령은 프로세서 수가 4 일 때 항상 단일 프로세스를 반환합니다. MPU 3.2.1을 가상 xUbuntu 16.04에서 CLion과 함께 사용하고 있습니다. 에뮬레이터 - VMWare. VM 설정에서 프로세서 수는 4로 설정되고, xUbuntu의 nproc에는 "4"가 표시됩니다. .MPI_Comm_size는 항상 1을 반환합니다.
mpicc: /usr/local/bin/mpicc
I'v는 MPI 1 시도 **하지만합니다 alse 같은했다 :
여기 whereis 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 :
여기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")
코드의 일부입니다
[email protected]:~/prog/primes$ mpicc -o main.o main.c
[email protected]:~/prog/primes$ mpiexec -np 4 ./mail.o
아무것도 제공하지 않습니다 여기에
은 CMakeLists.txt 파일입니다. 아무 일도없고 아무 것도 콘솔에 쓰여지지 않습니다. "kamo @ kamo : ~/prog/primes $"프리픽스가없는 새로운 라인.
하나의 lib에서 mpirun을 섞어서는 안되며, 다른 lib/version의 libmpi.so와 연결되어 있지 않은지 확인하십시오. –
@GillesGouaillardet : OP가 'mpirun'을 전혀 사용하고 있는지 궁금합니다. –
좋은 지적! MPI 응용 프로그램은'mpirun' 또는'mpiexec'을 통해 시작해야합니다. 그렇지 않으면 싱글 톤 모드로 알려져 있으며 하나의 MPI 작업 만 실행됩니다. –