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]
Tento commit je obsažen v:
Edgar Gabriel
2022-07-15 16:17:53 +00:00
rodič 24d9d1c37a
revize a9e0333dba
+5 -1
Zobrazit soubor
@@ -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)
{