intercept SIGUSR2 in RCCL

add support for intercepting SIGUSR2 in RCCL. This signal will
not terminate the execution of the application, but print the stacktrace
of the process that the signal was sent to instead.


[ROCm/rccl commit: 2b1d5d3bc1]
이 커밋은 다음에 포함됨:
Edgar Gabriel가 2022-07-15 16:28:46 +00:00를 커밋했습니다
1 부모 24d9d1c37a
커밋 a9e0333dba
1 파일이 변경됨
+5 -1
+5 -1
파일 보기
@@ -58,6 +58,10 @@ void sig_handler(int signum)
free (strings);
#endif
if (signum == SIGUSR2) {
return;
}
exit (-1);
}
@@ -69,7 +73,7 @@ void RegisterSignalHandlers()
{
INFO(NCCL_INIT, "Enabling custom signal handler");
std::vector<int> signalsToCatch = {SIGILL, SIGBUS, SIGFPE, SIGSEGV};
std::vector<int> signalsToCatch = {SIGILL, SIGBUS, SIGFPE, SIGSEGV, SIGUSR2};
for (auto signum : signalsToCatch)
{