2014-12-11 3 views
0

MPI 프로그래밍을 처음 사용합니다. 나는 기본적인 단계에있다. 그래서이 명령을 사용하여 프로그램을 실행합니다.무한 루프 후 Windows 명령 프롬프트에서 MPI 프로그램 실행을 중지하는 방법

mpirun -np 4 try 

그러면 내 프로그램이 실행됩니다. 나는 MPICH NT를 사용하고있다. 무언가를 놓치면 무한 루프가 시작됩니다. 나는

MPI_Send(&buf, 1, MPI_INT, 1, DEFAULT_TAG, MPI_COMM_WORLD); 
MPI_Recv(&buf, 1, MPI_INT, 15, DEFAULT_TAG, MPI_COMM_WORLD, &status); 

소스 & 대상처럼 MPI_Send & MPI_Recv으로 더듬 잘못 가정하자. 이제이 명령 프롬프트를 실행하는 동안 얼어 붙었습니다. 그것은 내가 방금 무언가를 할 수 있도록 허용하지 않습니다. 그런 다음 명령 프롬프트를 다시 시작하고 다시 디렉터리로 이동해야합니다. 50 번 상상해보십시오 ..... 어떻게 명령 프롬프트를 다시 시작하지 않아도됩니까? 정지 모드에서 쉽게 복구 할 수 있습니까?

+0

확실히 이것이 중복입니까? 프로세스는 전송을 기다리고 수신합니다. 프로세스가 전송 중이기 때문에 수신이 발생하지 않습니다. 비 차단 동작을 사용합니다. –

+0

mpirun은 무엇인지 모르지만 대부분의 콘솔 프로그램은 Ctrl + C를 눌러 작동을 종료합니다. 그래도 작동하지 않으면 작업 관리자 (Ctrl + Shift + Esc)에서 mpirun.exe를 항상 삭제할 수 있습니다. –

+0

@RobLatham 그것이 무엇인지 압니다. 질문은 명령 프롬프트를 종료하지 않고이 상황을 복구하는 방법 이었습니까? – AtanuCSE

답변

0

대부분의 콘솔 프로그램은 Ctrl+C에 응답하여 작동을 종료합니다. 그래도 작동하지 않으면 작업 관리자 (Ctrl+Shift+Esc)에서 mpirun.exe를 항상 삭제할 수 있습니다