Files
Atul Kulkarni c94fb7c58e Code coverage improvements (#1665)
* Increased max stack size to 640

* Added new binary for executing unit tests

Added new unit tests for argcheck.cc and alt_rsmi.cc files

Modified the method to execute unit tests to cover static methods
by using a bash script to convert static to non-static functions
and variables on the fly restricted to debug build type.

[ROCm/rccl commit: 275fdd43c1]
2025-07-17 11:20:49 -05:00

55 líneas
2.0 KiB
C++

#ifndef STANDALONE_UTILS_H
#define STANDALONE_UTILS_H
#include <cstdio>
#include <vector>
#include <string>
#include <rccl/rccl.h>
#define HIPCALL(cmd) \
do { \
hipError_t error = (cmd); \
if (error != hipSuccess) \
{ \
printf("Encountered HIP error (%s) at line %d in file %s\n", \
hipGetErrorString(error), __LINE__, __FILE__); \
exit(-1); \
} \
} while (0)
#define NCCLCHECK(cmd) do { \
ncclResult_t res = cmd; \
if (res != ncclSuccess) { \
printf("NCCL failure %s:%d '%s'\n", \
__FILE__,__LINE__,ncclGetErrorString(res)); \
} \
} while(0)
#define MAX_STACK_SIZE 640
#ifdef ENABLE_LL128
#define MAX_STACK_SIZE_gfx90a 360
#else
#define MAX_STACK_SIZE_gfx90a MAX_STACK_SIZE
#endif
namespace RcclUnitTesting
{
struct KernelInfo {
std::string name;
int privateSegmentFixedSize = 0;
};
struct ArchInfo {
std::string archName;
std::vector<KernelInfo> kernels;
};
std::string executeCommand(const char* cmd);
std::vector<std::string> splitString(const std::string& str, char delimiter);
ArchInfo parseMetadata(const std::vector<std::string>& list);
}
#endif