PYTORCH ProcessGroupNCCL 环境变量¶
有关环境变量的更多信息,请参阅 ProcessGroupNCCL 环境变量。
变量 |
描述 |
---|---|
|
控制当监视线程(watchdog)检测到异常时,PyTorch 如何执行 NCCL 的异步错误处理。如果设置为 0,则不处理异步 NCCL 错误。如果设置为 1,则中止 NCCL communicator 并在出错时终止进程。如果设置为 2,则仅中止 NCCL communicator;如果设置为 3,则在不中止 NCCL communicator 的情况下终止进程。默认情况下,它设置为 3。 |
|
控制是否为 NCCL communicator 使用高优先级流。 |
|
控制 wait() 是阻塞还是非阻塞。 |
|
控制是否在监视线程超时或检测到异常时转储调试信息。此变量必须与大于 0 的 TORCH_NCCL_TRACE_BUFFER_SIZE 一起设置。 |
|
控制是否启用 Desync Debug。这有助于找出集合操作失步(collective desync)的罪魁祸首 rank。 |
|
如果设置为 |
|
如果设置为 |
|
控制监视线程心跳的超时时间(秒),在此之后监控线程将中止进程。 |
|
我们在飞行记录器(flight recorder)的环形缓冲区中存储的最大事件数。一个事件可以是集合操作的开始或结束,例如。设置为 0 以禁用 tracebuffer 和调试信息转储。 |
|
是否为飞行记录器收集 C++ 堆栈跟踪。默认值为 False。 |
|
控制监控线程内部检查来自其他 rank 的协调信号(例如转储调试信息)的时间间隔。默认值为 1000 毫秒。 |
|
控制在退出并抛出超时异常之前,我们将额外等待多长时间以转储调试信息。 |
|
将调试信息转储到的文件。 |
|
用于手动触发调试转储的管道文件,写入管道中的任何内容都会触发转储。 |
|
控制是否对输入启用 NAN 检查,如果检测到 NAN 将抛出错误。 |