Visual Studio 또는 OS의 명령 줄을 통해 단순히 바이너리를 실행하는 것 외에 "Nsight로 디버그"옵션을 설정하는 방법을 알고 싶습니다.Nsight 디버그 시작과 정상 OS 시작의 차이점
"Nsight로 디버깅"으로 프로그램을 실행하면 프로그램이 제대로 작동하기 때문에 그 이유는 묻습니다.하지만 Visual Studio의 시작 버튼을 사용하여 드라이버를 시작하면 일부 cudaMemcpys에 cudaMemcpys가 표시 될 수 있습니다. 실행 파일을 실행하는 것). Nsight가 프로그램을 올바르게 실행하는 데 필요한 특정 실행 매개 변수를 가지고 있어야한다고 생각합니다.
API 오류가 발생한 드라이버 크래시가 Windows TDR 이벤트 (Google 또는 SO 검색 - 많은 질문과 답변이 있음)에 부딪 힐 가능성이 큽니다. nsight로 디버깅 할 때 디버그 세션에서 정확히 무엇을하는지에 따라 커널 실행이 여러 가지 이유로 (단일 단계, 중단 점 및 기타 이유로) 중지 된 다음 다시 시작될 수 있습니다. 커널 실행을 중지하면 TDR 이벤트없이 Windows Watchdog을 만족할 수 있습니다. –
그게 정확히 무슨 일이 있었는지. Windows가 기본 2 초 시간 초과 후 드라이버를 손상 시켰기 때문에 cudaMemcpys가 실패했습니다. 나는 TDR을 완전히 무능하게하고 프로그램은 지금 예상대로 달린다. 감사! – brito