Files | |
file | error.hpp |
Namespaces | |
cudf | |
cuDF interfaces | |
Classes | |
struct | cudf::logic_error |
Exception thrown when logical precondition is violated. More... | |
struct | cudf::cuda_error |
Exception thrown when a CUDA error is encountered. More... | |
struct | cudf::fatal_cuda_error |
Macros | |
#define | CUDF_EXPECTS(cond, reason) |
Macro for checking (pre-)conditions that throws an exception when a condition is violated. More... | |
#define | CUDF_FAIL(reason) throw cudf::logic_error("cuDF failure at: " __FILE__ ":" CUDF_STRINGIFY(__LINE__) ": " reason) |
Indicates that an erroneous code path has been taken. More... | |
#define | CUDF_CUDA_TRY(call) |
Error checking macro for CUDA runtime API functions. More... | |
#define | CUDF_CHECK_CUDA(stream) |
Debug macro to check for CUDA errors. More... | |
#define CUDF_CHECK_CUDA | ( | stream | ) |
Debug macro to check for CUDA errors.
In a non-release build, this macro will synchronize the specified stream before error checking. In both release and non-release builds, this macro checks for any pending CUDA errors from previous calls. If an error is reported, an exception is thrown detailing the CUDA error that occurred.
The intent of this macro is to provide a mechanism for synchronous and deterministic execution for debugging asynchronous CUDA execution. It should be used after any asynchronous CUDA call, e.g., cudaMemcpyAsync, or an asynchronous kernel launch.
#define CUDF_CUDA_TRY | ( | call | ) |
Error checking macro for CUDA runtime API functions.
Invokes a CUDA runtime API function call, if the call does not return cudaSuccess, invokes cudaGetLastError() to clear the error and throws an exception detailing the CUDA error that occurred
#define CUDF_EXPECTS | ( | cond, | |
reason | |||
) |
Macro for checking (pre-)conditions that throws an exception when a condition is violated.
Example usage:
[in] | cond | Expression that evaluates to true or false |
[in] | reason | String literal description of the reason that cond is expected to be true |
cudf::logic_error | if the condition evaluates to false. |
#define CUDF_FAIL | ( | reason | ) | throw cudf::logic_error("cuDF failure at: " __FILE__ ":" CUDF_STRINGIFY(__LINE__) ": " reason) |
Indicates that an erroneous code path has been taken.
In host code, throws a cudf::logic_error
.
Example usage:
[in] | reason | String literal description of the reason |