blob: 2821f94d2b7d5d0d7d9e756c25e2076614df6f5f [file] [log] [blame]
//NS: CUDACachingAllocator must be included before to get CUDART_VERSION definedi
#include <c10/cuda/CUDACachingAllocator.h>
#include <ATen/cuda/Exceptions.h>
namespace at {
namespace cuda {
namespace blas {
C10_EXPORT const char* _cublasGetErrorEnum(cublasStatus_t error) {
if (error == CUBLAS_STATUS_SUCCESS) {
return "CUBLAS_STATUS_SUCCESS";
}
if (error == CUBLAS_STATUS_NOT_INITIALIZED) {
return "CUBLAS_STATUS_NOT_INITIALIZED";
}
if (error == CUBLAS_STATUS_ALLOC_FAILED) {
return "CUBLAS_STATUS_ALLOC_FAILED";
}
if (error == CUBLAS_STATUS_INVALID_VALUE) {
return "CUBLAS_STATUS_INVALID_VALUE";
}
if (error == CUBLAS_STATUS_ARCH_MISMATCH) {
return "CUBLAS_STATUS_ARCH_MISMATCH";
}
if (error == CUBLAS_STATUS_MAPPING_ERROR) {
return "CUBLAS_STATUS_MAPPING_ERROR";
}
if (error == CUBLAS_STATUS_EXECUTION_FAILED) {
return "CUBLAS_STATUS_EXECUTION_FAILED";
}
if (error == CUBLAS_STATUS_INTERNAL_ERROR) {
return "CUBLAS_STATUS_INTERNAL_ERROR";
}
if (error == CUBLAS_STATUS_NOT_SUPPORTED) {
return "CUBLAS_STATUS_NOT_SUPPORTED";
}
#ifdef CUBLAS_STATUS_LICENSE_ERROR
if (error == CUBLAS_STATUS_LICENSE_ERROR) {
return "CUBLAS_STATUS_LICENSE_ERROR";
}
#endif
return "<unknown>";
}
} // namespace blas
#ifdef CUDART_VERSION
namespace solver {
C10_EXPORT const char* cusolverGetErrorMessage(cusolverStatus_t status) {
switch (status) {
case CUSOLVER_STATUS_SUCCESS: return "CUSOLVER_STATUS_SUCCES";
case CUSOLVER_STATUS_NOT_INITIALIZED: return "CUSOLVER_STATUS_NOT_INITIALIZED";
case CUSOLVER_STATUS_ALLOC_FAILED: return "CUSOLVER_STATUS_ALLOC_FAILED";
case CUSOLVER_STATUS_INVALID_VALUE: return "CUSOLVER_STATUS_INVALID_VALUE";
case CUSOLVER_STATUS_ARCH_MISMATCH: return "CUSOLVER_STATUS_ARCH_MISMATCH";
case CUSOLVER_STATUS_EXECUTION_FAILED: return "CUSOLVER_STATUS_EXECUTION_FAILED";
case CUSOLVER_STATUS_INTERNAL_ERROR: return "CUSOLVER_STATUS_INTERNAL_ERROR";
case CUSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED: return "CUSOLVER_STATUS_MATRIX_TYPE_NOT_SUPPORTED";
default: return "Unknown cusolver error number";
}
}
} // namespace solver
#endif
}} // namespace at::cuda