前提・実現したいこと
macとraspberry piをopenMPIを用いて並列化したい。
発生している問題・エラーメッセージ
mac単体、raspberry pi単体では動く並列化プログラムがmacとraspberry piで並列して動かそうとすると動かない。
該当のソースコード
MPI_Send.cpp
c++
1#include <stdio.h> 2#include <mpi.h> 3#include "opencv2/highgui/highgui.hpp" 4#include "opencv2/opencv.hpp" 5 6int main(int argc, char **argv) 7{ 8 MPI_Status status; 9 MPI_Request request; 10 int myrank,loop = 0; 11 double azimuth=0,elevation=0; 12 double setData[4] = {-10, 0, 10, 0}; 13 14 MPI_Init(&argc,&argv); 15 MPI_Comm_rank(MPI_COMM_WORLD,&myrank); 16 double setxy[2]; 17 18 if(myrank == 0){ 19 setxy[0] = 111; 20 setxy[1] = 111; 21 22 MPI_Send(setxy,2,MPI_DOUBLE,1,99,MPI_COMM_WORLD); 23 24 while(1){ 25 setxy[0] = azimuth; 26 setxy[1] = elevation; 27 fprintf(stderr,"\tSend %.1f:%.1f\n",setxy[0],setxy[1]); 28 MPI_Isend(setxy,2,MPI_DOUBLE,1,55,MPI_COMM_WORLD,&request); 29 if(loop == 4)loop=0; 30 azimuth = setData[loop]; 31 loop = loop +1; 32 elevation = 0; 33 cv::waitKey(500); 34 } 35 } 36 MPI_Finalize(); 37 return 0; 38}
MPI_Recv.cpp
c++
1#include <stdio.h> 2#include "mpi.h" 3#include <time.h> 4 5int main(int argc, char **argv) 6{ 7 MPI_Status status; 8 MPI_Request request,req_tmp; 9 int myrank,I=0; 10 double azimuth=0,elevation=0,tmp,A_E[2]; 11 12 MPI_Init(&argc,&argv); 13 MPI_Comm_rank(MPI_COMM_WORLD,&myrank); 14 bool loop = true; 15 16 if(myrank == 1){ 17 18 while(1){ 19 MPI_Recv(A_E,2,MPI_DOUBLE,0,55,MPI_COMM_WORLD,&status); 20 if(A_E[0] == 999 && A_E[1] == 999){ 21 printf("Recv Break!\n"); 22 break; 23 } 24 while(loop){ 25 int flag = 1; 26 MPI_Irecv(A_E,2,MPI_DOUBLE,0,55,MPI_COMM_WORLD,&request); 27 MPI_Test(&request,&flag,&status); 28 if(azimuth != A_E[0] || elevation != A_E[1]){ 29 azimuth = A_E[0]; 30 elevation = A_E[1]; 31 printf("\t\t\tRecv\tazi=%.2f ele=%.2f\n",azimuth,elevation); 32 } 33 } 34 } 35 } 36 MPI_Finalize(); 37 return 0; 38} 39
node.txt(ホストファイル)
192.168.35.8 # mac 192.168.35.35 # rasperrypi
試したこと
ssh接続するときに、ssh pi@192.168.35.35
だと接続できて、
ssh 192.168.35.35
だとパスワードを聞かれてしまう。
公開鍵を作っておりパスワードは必要ないはずなのに聞かれる。(raspberry piのパスワードを入力しても間違いになってしまう。)
補足情報(FW/ツールのバージョンなど)
macOS catalina
raspberry pi 4
回答1件
あなたの回答
tips
プレビュー