71 lines
1.8 KiB
C++
71 lines
1.8 KiB
C++
// Copyright (C) 2015 Davis E. King (davis@dlib.net)
|
|
// License: Boost Software License See LICENSE.txt for the full license.
|
|
#ifndef DLIB_CUDA_ERRORs_H_
|
|
#define DLIB_CUDA_ERRORs_H_
|
|
|
|
|
|
#include "../error.h"
|
|
|
|
namespace dlib
|
|
{
|
|
struct cuda_error : public error
|
|
{
|
|
/*!
|
|
WHAT THIS OBJECT REPRESENTS
|
|
This is the exception thrown if any calls to the NVIDIA CUDA runtime
|
|
returns an error.
|
|
!*/
|
|
|
|
cuda_error(const std::string& message): error(message) {}
|
|
};
|
|
|
|
|
|
struct cudnn_error : public cuda_error
|
|
{
|
|
/*!
|
|
WHAT THIS OBJECT REPRESENTS
|
|
This is the exception thrown if any calls to the NVIDIA cuDNN library
|
|
returns an error.
|
|
!*/
|
|
|
|
cudnn_error(const std::string& message): cuda_error(message) {}
|
|
};
|
|
|
|
struct curand_error : public cuda_error
|
|
{
|
|
/*!
|
|
WHAT THIS OBJECT REPRESENTS
|
|
This is the exception thrown if any calls to the NVIDIA cuRAND library
|
|
returns an error.
|
|
!*/
|
|
|
|
curand_error(const std::string& message): cuda_error(message) {}
|
|
};
|
|
|
|
struct cublas_error : public cuda_error
|
|
{
|
|
/*!
|
|
WHAT THIS OBJECT REPRESENTS
|
|
This is the exception thrown if any calls to the NVIDIA cuBLAS library
|
|
returns an error.
|
|
!*/
|
|
|
|
cublas_error(const std::string& message): cuda_error(message) {}
|
|
};
|
|
|
|
struct cusolver_error : public cuda_error
|
|
{
|
|
/*!
|
|
WHAT THIS OBJECT REPRESENTS
|
|
This is the exception thrown if any calls to the NVIDIA cuSolver library
|
|
returns an error.
|
|
!*/
|
|
|
|
cusolver_error(const std::string& message): cuda_error(message) {}
|
|
};
|
|
}
|
|
|
|
|
|
#endif // DLIB_CUDA_ERRORs_H_
|
|
|