Add 'projects/rccl/' from commit '1f2f9f33bac3e8ecfd84c69af6063d7352c362fc'
git-subtree-dir: projects/rccl git-subtree-mainline:3fd8a0d393git-subtree-split:1f2f9f33ba
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
/*************************************************************************
|
||||
* Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved.
|
||||
*
|
||||
* See LICENSE.txt for license information
|
||||
************************************************************************/
|
||||
|
||||
/**
|
||||
* @file TestChecks.cpp
|
||||
* @brief Implementation file for TestChecks.hpp
|
||||
*
|
||||
* Provides definitions for variables used by test logging macros.
|
||||
*/
|
||||
|
||||
#include "TestChecks.hpp"
|
||||
|
||||
#ifdef MPI_TESTS_ENABLED
|
||||
|
||||
#include <cstdlib>
|
||||
#include <cstring>
|
||||
|
||||
// Define and initialize rcclTestDebugLevel for TEST_* macros
|
||||
|
||||
// This matches RCCL's debug level parsing logic from src/debug.cc
|
||||
// Values correspond to ncclDebugLogLevel enum in nccl_common.h:
|
||||
// - -1 = Uninitialized (treated as ERROR level)
|
||||
// - 0 = NCCL_LOG_NONE
|
||||
// - 1 = NCCL_LOG_VERSION
|
||||
// - 2 = NCCL_LOG_WARN
|
||||
// - 3 = NCCL_LOG_INFO
|
||||
// - 4 = NCCL_LOG_ABORT
|
||||
// - 5 = NCCL_LOG_TRACE
|
||||
int rcclTestDebugLevel = []() -> int {
|
||||
const char* env = std::getenv("NCCL_DEBUG");
|
||||
|
||||
// Default to ERROR level if not set (matches RCCL behavior)
|
||||
if (!env) return -1;
|
||||
|
||||
// Match RCCL's case-insensitive string comparison
|
||||
if (strcasecmp(env, "NONE") == 0) return 0;
|
||||
if (strcasecmp(env, "VERSION") == 0) return 1;
|
||||
if (strcasecmp(env, "WARN") == 0) return 2;
|
||||
if (strcasecmp(env, "INFO") == 0) return 3;
|
||||
if (strcasecmp(env, "ABORT") == 0) return 4;
|
||||
if (strcasecmp(env, "TRACE") == 0) return 5;
|
||||
|
||||
// Unknown value, default to ERROR level
|
||||
return -1;
|
||||
}();
|
||||
|
||||
#endif // MPI_TESTS_ENABLED
|
||||
|
||||
|
||||
Reference in New Issue
Block a user