jcuda.driver
Class CUresult

java.lang.Object
  extended by jcuda.driver.CUresult

public class CUresult
extends java.lang.Object

Error codes.

Most comments are taken from the CUDA reference manual.


Field Summary
static int CUDA_ERROR_ALREADY_ACQUIRED
          This indicates that a resource has already been acquired.
static int CUDA_ERROR_ALREADY_MAPPED
          This indicates that the resource is already mapped.
static int CUDA_ERROR_ARRAY_IS_MAPPED
          This indicates that the specified array is currently mapped and thus cannot be destroyed.
static int CUDA_ERROR_ASSERT
          A device-side assert triggered during kernel execution.
static int CUDA_ERROR_CONTEXT_ALREADY_CURRENT
          This indicated that the context being supplied as a parameter to the API call was already the active context.
static int CUDA_ERROR_CONTEXT_ALREADY_IN_USE
          This indicates that the ::CUcontext passed to the API call can only be bound to a single CPU thread at a time but is already bound to a CPU thread.
static int CUDA_ERROR_CONTEXT_IS_DESTROYED
          This error indicates that the context current to the calling thread has been destroyed using ::cuCtxDestroy, or is a primary context which has not yet been initialized.
static int CUDA_ERROR_DEINITIALIZED
          This indicates that the CUDA driver is in the process of shutting down.
static int CUDA_ERROR_ECC_UNCORRECTABLE
          This indicates that an uncorrectable ECC error was detected during execution.
static int CUDA_ERROR_FILE_NOT_FOUND
          This indicates that the file specified was not found.
static int CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED
          This error indicates that the memory range passed to ::cuMemHostRegister() has already been registered.
static int CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED
          This error indicates that the pointer passed to ::cuMemHostUnregister() does not correspond to any currently registered memory region.
static int CUDA_ERROR_INVALID_CONTEXT
          This most frequently indicates that there is no context bound to the current thread.
static int CUDA_ERROR_INVALID_DEVICE
          This indicates that the device ordinal supplied by the user does not correspond to a valid CUDA device.
static int CUDA_ERROR_INVALID_HANDLE
          This indicates that a resource handle passed to the API call was not valid.
static int CUDA_ERROR_INVALID_IMAGE
          This indicates that the device kernel image is invalid.
static int CUDA_ERROR_INVALID_SOURCE
          This indicates that the device kernel source is invalid.
static int CUDA_ERROR_INVALID_VALUE
          This indicates that one or more of the parameters passed to the API call is not within an acceptable range of values.
static int CUDA_ERROR_LAUNCH_FAILED
          An exception occurred on the device while executing a kernel.
static int CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING
          This error indicates a kernel launch that uses an incompatible texturing mode.
static int CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES
          This indicates that a launch did not occur because it did not have appropriate resources.
static int CUDA_ERROR_LAUNCH_TIMEOUT
          This indicates that the device kernel took too long to execute.
static int CUDA_ERROR_MAP_FAILED
          This indicates that a map or register operation has failed.
static int CUDA_ERROR_NO_BINARY_FOR_GPU
          This indicates that there is no kernel image available that is suitable for the device.
static int CUDA_ERROR_NO_DEVICE
          This indicates that no CUDA-capable devices were detected by the installed CUDA driver.
static int CUDA_ERROR_NOT_FOUND
          This indicates that a named symbol was not found.
static int CUDA_ERROR_NOT_INITIALIZED
          This indicates that the CUDA driver has not been initialized with ::cuInit() or that initialization has failed.
static int CUDA_ERROR_NOT_MAPPED
          This indicates that a resource is not mapped.
static int CUDA_ERROR_NOT_MAPPED_AS_ARRAY
          This indicates that a mapped resource is not available for access as an array.
static int CUDA_ERROR_NOT_MAPPED_AS_POINTER
          This indicates that a mapped resource is not available for access as a pointer.
static int CUDA_ERROR_NOT_PERMITTED
          This error indicates that the attempted operation is not permitted.
static int CUDA_ERROR_NOT_READY
          This indicates that asynchronous operations issued previously have not completed yet.
static int CUDA_ERROR_NOT_SUPPORTED
          This error indicates that the attempted operation is not supported on the current system or device.
static int CUDA_ERROR_OPERATING_SYSTEM
          This indicates that an OS call failed.
static int CUDA_ERROR_OUT_OF_MEMORY
          The API call failed because it was unable to allocate enough memory to perform the requested operation.
static int CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED
          This error indicates that a call to ::cuCtxEnablePeerAccess() is trying to re-enable peer access to a context which has already had peer access to it enabled.
static int CUDA_ERROR_PEER_ACCESS_NOT_ENABLED
          This error indicates that a call to ::cuMemPeerRegister is trying to register memory from a context which has not had peer access enabled yet via ::cuCtxEnablePeerAccess(), or that ::cuCtxDisablePeerAccess() is trying to disable peer access which has not been enabled yet.
static int CUDA_ERROR_PEER_ACCESS_UNSUPPORTED
          This indicates that peer access is not supported across the given devices.
static int CUDA_ERROR_PEER_MEMORY_ALREADY_REGISTERED
          Deprecated. This value has been added in CUDA 4.0 RC, and removed in CUDA 4.0 RC2
static int CUDA_ERROR_PEER_MEMORY_NOT_REGISTERED
          Deprecated. This value has been added in CUDA 4.0 RC, and removed in CUDA 4.0 RC2
static int CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE
          This error indicates that ::cuCtxCreate was called with the flag ::CU_CTX_PRIMARY on a device which already has initialized its primary context.
static int CUDA_ERROR_PROFILER_ALREADY_STARTED
          Deprecated. This error return is deprecated as of CUDA 5.0. It is no longer an error to call cuProfilerStart() when profiling is already enabled.
static int CUDA_ERROR_PROFILER_ALREADY_STOPPED
          Deprecated. This error return is deprecated as of CUDA 5.0. It is no longer an error to call cuProfilerStop() when profiling is already disabled.
static int CUDA_ERROR_PROFILER_DISABLED
          This indicates profiling APIs are called while application is running in visual profiler mode.
static int CUDA_ERROR_PROFILER_NOT_INITIALIZED
          Deprecated. This error return is deprecated as of CUDA 5.0. It is no longer an error to attempt to enable/disable the profiling via ::cuProfilerStart or ::cuProfilerStop without initialization.
static int CUDA_ERROR_SHARED_OBJECT_INIT_FAILED
          This indicates that initialization of a shared object failed.
static int CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND
          This indicates that a link to a shared object failed to resolve.
static int CUDA_ERROR_TOO_MANY_PEERS
          This error indicates that the hardware resources required to enable peer access have been exhausted for one or more of the devices passed to ::cuCtxEnablePeerAccess().
static int CUDA_ERROR_UNKNOWN
          This indicates that an unknown internal error has occurred.
static int CUDA_ERROR_UNMAP_FAILED
          This indicates that an unmap or unregister operation has failed.
static int CUDA_ERROR_UNSUPPORTED_LIMIT
          This indicates that the ::CUlimit passed to the API call is not supported by the active device.
static int CUDA_SUCCESS
          The API call returned with no errors.
 
Method Summary
static java.lang.String stringFor(int result)
          Returns the String identifying the given CUresult
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CUDA_SUCCESS

public static final int CUDA_SUCCESS
The API call returned with no errors. In the case of query calls, this can also mean that the operation being queried is complete (see ::cuEventQuery() and ::cuStreamQuery()).

See Also:
Constant Field Values

CUDA_ERROR_INVALID_VALUE

public static final int CUDA_ERROR_INVALID_VALUE
This indicates that one or more of the parameters passed to the API call is not within an acceptable range of values.

See Also:
Constant Field Values

CUDA_ERROR_OUT_OF_MEMORY

public static final int CUDA_ERROR_OUT_OF_MEMORY
The API call failed because it was unable to allocate enough memory to perform the requested operation.

See Also:
Constant Field Values

CUDA_ERROR_NOT_INITIALIZED

public static final int CUDA_ERROR_NOT_INITIALIZED
This indicates that the CUDA driver has not been initialized with ::cuInit() or that initialization has failed.

See Also:
Constant Field Values

CUDA_ERROR_DEINITIALIZED

public static final int CUDA_ERROR_DEINITIALIZED
This indicates that the CUDA driver is in the process of shutting down.

See Also:
Constant Field Values

CUDA_ERROR_PROFILER_DISABLED

public static final int CUDA_ERROR_PROFILER_DISABLED
This indicates profiling APIs are called while application is running in visual profiler mode.

See Also:
Constant Field Values

CUDA_ERROR_PROFILER_NOT_INITIALIZED

public static final int CUDA_ERROR_PROFILER_NOT_INITIALIZED
Deprecated. This error return is deprecated as of CUDA 5.0. It is no longer an error to attempt to enable/disable the profiling via ::cuProfilerStart or ::cuProfilerStop without initialization.
This indicates profiling has not been initialized for this context. Call cuProfilerInitialize() to resolve this.

See Also:
Constant Field Values

CUDA_ERROR_PROFILER_ALREADY_STARTED

public static final int CUDA_ERROR_PROFILER_ALREADY_STARTED
Deprecated. This error return is deprecated as of CUDA 5.0. It is no longer an error to call cuProfilerStart() when profiling is already enabled.
This indicates profiler has already been started and probably cuProfilerStart() is incorrectly called.

See Also:
Constant Field Values

CUDA_ERROR_PROFILER_ALREADY_STOPPED

public static final int CUDA_ERROR_PROFILER_ALREADY_STOPPED
Deprecated. This error return is deprecated as of CUDA 5.0. It is no longer an error to call cuProfilerStop() when profiling is already disabled.
This indicates profiler has already been stopped and probably cuProfilerStop() is incorrectly called.

See Also:
Constant Field Values

CUDA_ERROR_NO_DEVICE

public static final int CUDA_ERROR_NO_DEVICE
This indicates that no CUDA-capable devices were detected by the installed CUDA driver.

See Also:
Constant Field Values

CUDA_ERROR_INVALID_DEVICE

public static final int CUDA_ERROR_INVALID_DEVICE
This indicates that the device ordinal supplied by the user does not correspond to a valid CUDA device.

See Also:
Constant Field Values

CUDA_ERROR_INVALID_IMAGE

public static final int CUDA_ERROR_INVALID_IMAGE
This indicates that the device kernel image is invalid. This can also indicate an invalid CUDA module.

See Also:
Constant Field Values

CUDA_ERROR_INVALID_CONTEXT

public static final int CUDA_ERROR_INVALID_CONTEXT
This most frequently indicates that there is no context bound to the current thread. This can also be returned if the context passed to an API call is not a valid handle (such as a context that has had ::cuCtxDestroy() invoked on it). This can also be returned if a user mixes different API versions (i.e. 3010 context with 3020 API calls). See ::cuCtxGetApiVersion() for more details.

See Also:
Constant Field Values

CUDA_ERROR_CONTEXT_ALREADY_CURRENT

public static final int CUDA_ERROR_CONTEXT_ALREADY_CURRENT
This indicated that the context being supplied as a parameter to the API call was already the active context. \deprecated This error return is deprecated as of CUDA 3.2. It is no longer an error to attempt to push the active context via ::cuCtxPushCurrent().

See Also:
Constant Field Values

CUDA_ERROR_MAP_FAILED

public static final int CUDA_ERROR_MAP_FAILED
This indicates that a map or register operation has failed.

See Also:
Constant Field Values

CUDA_ERROR_UNMAP_FAILED

public static final int CUDA_ERROR_UNMAP_FAILED
This indicates that an unmap or unregister operation has failed.

See Also:
Constant Field Values

CUDA_ERROR_ARRAY_IS_MAPPED

public static final int CUDA_ERROR_ARRAY_IS_MAPPED
This indicates that the specified array is currently mapped and thus cannot be destroyed.

See Also:
Constant Field Values

CUDA_ERROR_ALREADY_MAPPED

public static final int CUDA_ERROR_ALREADY_MAPPED
This indicates that the resource is already mapped.

See Also:
Constant Field Values

CUDA_ERROR_NO_BINARY_FOR_GPU

public static final int CUDA_ERROR_NO_BINARY_FOR_GPU
This indicates that there is no kernel image available that is suitable for the device. This can occur when a user specifies code generation options for a particular CUDA source file that do not include the corresponding device configuration.

See Also:
Constant Field Values

CUDA_ERROR_ALREADY_ACQUIRED

public static final int CUDA_ERROR_ALREADY_ACQUIRED
This indicates that a resource has already been acquired.

See Also:
Constant Field Values

CUDA_ERROR_NOT_MAPPED

public static final int CUDA_ERROR_NOT_MAPPED
This indicates that a resource is not mapped.

See Also:
Constant Field Values

CUDA_ERROR_NOT_MAPPED_AS_ARRAY

public static final int CUDA_ERROR_NOT_MAPPED_AS_ARRAY
This indicates that a mapped resource is not available for access as an array.

See Also:
Constant Field Values

CUDA_ERROR_NOT_MAPPED_AS_POINTER

public static final int CUDA_ERROR_NOT_MAPPED_AS_POINTER
This indicates that a mapped resource is not available for access as a pointer.

See Also:
Constant Field Values

CUDA_ERROR_ECC_UNCORRECTABLE

public static final int CUDA_ERROR_ECC_UNCORRECTABLE
This indicates that an uncorrectable ECC error was detected during execution.

See Also:
Constant Field Values

CUDA_ERROR_UNSUPPORTED_LIMIT

public static final int CUDA_ERROR_UNSUPPORTED_LIMIT
This indicates that the ::CUlimit passed to the API call is not supported by the active device.

See Also:
Constant Field Values

CUDA_ERROR_CONTEXT_ALREADY_IN_USE

public static final int CUDA_ERROR_CONTEXT_ALREADY_IN_USE
This indicates that the ::CUcontext passed to the API call can only be bound to a single CPU thread at a time but is already bound to a CPU thread.

See Also:
Constant Field Values

CUDA_ERROR_PEER_ACCESS_UNSUPPORTED

public static final int CUDA_ERROR_PEER_ACCESS_UNSUPPORTED
This indicates that peer access is not supported across the given devices.

See Also:
Constant Field Values

CUDA_ERROR_INVALID_SOURCE

public static final int CUDA_ERROR_INVALID_SOURCE
This indicates that the device kernel source is invalid.

See Also:
Constant Field Values

CUDA_ERROR_FILE_NOT_FOUND

public static final int CUDA_ERROR_FILE_NOT_FOUND
This indicates that the file specified was not found.

See Also:
Constant Field Values

CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND

public static final int CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND
This indicates that a link to a shared object failed to resolve.

See Also:
Constant Field Values

CUDA_ERROR_SHARED_OBJECT_INIT_FAILED

public static final int CUDA_ERROR_SHARED_OBJECT_INIT_FAILED
This indicates that initialization of a shared object failed.

See Also:
Constant Field Values

CUDA_ERROR_OPERATING_SYSTEM

public static final int CUDA_ERROR_OPERATING_SYSTEM
This indicates that an OS call failed.

See Also:
Constant Field Values

CUDA_ERROR_INVALID_HANDLE

public static final int CUDA_ERROR_INVALID_HANDLE
This indicates that a resource handle passed to the API call was not valid. Resource handles are opaque types like ::CUstream and ::CUevent.

See Also:
Constant Field Values

CUDA_ERROR_NOT_FOUND

public static final int CUDA_ERROR_NOT_FOUND
This indicates that a named symbol was not found. Examples of symbols are global/constant variable names, texture names, and surface names.

See Also:
Constant Field Values

CUDA_ERROR_NOT_READY

public static final int CUDA_ERROR_NOT_READY
This indicates that asynchronous operations issued previously have not completed yet. This result is not actually an error, but must be indicated differently than ::CUDA_SUCCESS (which indicates completion). Calls that may return this value include ::cuEventQuery() and ::cuStreamQuery().

See Also:
Constant Field Values

CUDA_ERROR_LAUNCH_FAILED

public static final int CUDA_ERROR_LAUNCH_FAILED
An exception occurred on the device while executing a kernel. Common causes include dereferencing an invalid device pointer and accessing out of bounds shared memory. The context cannot be used, so it must be destroyed (and a new one should be created). All existing device memory allocations from this context are invalid and must be reconstructed if the program is to continue using CUDA.

See Also:
Constant Field Values

CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES

public static final int CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES
This indicates that a launch did not occur because it did not have appropriate resources. This error usually indicates that the user has attempted to pass too many arguments to the device kernel, or the kernel launch specifies too many threads for the kernel's register count. Passing arguments of the wrong size (i.e. a 64-bit pointer when a 32-bit int is expected) is equivalent to passing too many arguments and can also result in this error.

See Also:
Constant Field Values

CUDA_ERROR_LAUNCH_TIMEOUT

public static final int CUDA_ERROR_LAUNCH_TIMEOUT
This indicates that the device kernel took too long to execute. This can only occur if timeouts are enabled - see the device attribute ::CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT for more information. The context cannot be used (and must be destroyed similar to ::CUDA_ERROR_LAUNCH_FAILED). All existing device memory allocations from this context are invalid and must be reconstructed if the program is to continue using CUDA.

See Also:
Constant Field Values

CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING

public static final int CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING
This error indicates a kernel launch that uses an incompatible texturing mode.

See Also:
Constant Field Values

CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED

public static final int CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED
This error indicates that a call to ::cuCtxEnablePeerAccess() is trying to re-enable peer access to a context which has already had peer access to it enabled.

See Also:
Constant Field Values

CUDA_ERROR_PEER_ACCESS_NOT_ENABLED

public static final int CUDA_ERROR_PEER_ACCESS_NOT_ENABLED
This error indicates that a call to ::cuMemPeerRegister is trying to register memory from a context which has not had peer access enabled yet via ::cuCtxEnablePeerAccess(), or that ::cuCtxDisablePeerAccess() is trying to disable peer access which has not been enabled yet.

See Also:
Constant Field Values

CUDA_ERROR_PEER_MEMORY_ALREADY_REGISTERED

public static final int CUDA_ERROR_PEER_MEMORY_ALREADY_REGISTERED
Deprecated. This value has been added in CUDA 4.0 RC, and removed in CUDA 4.0 RC2
This error indicates that a call to ::cuMemPeerRegister is trying to register already-registered memory.

See Also:
Constant Field Values

CUDA_ERROR_PEER_MEMORY_NOT_REGISTERED

public static final int CUDA_ERROR_PEER_MEMORY_NOT_REGISTERED
Deprecated. This value has been added in CUDA 4.0 RC, and removed in CUDA 4.0 RC2
This error indicates that a call to ::cuMemPeerUnregister is trying to unregister memory that has not been registered.

See Also:
Constant Field Values

CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE

public static final int CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE
This error indicates that ::cuCtxCreate was called with the flag ::CU_CTX_PRIMARY on a device which already has initialized its primary context.

See Also:
Constant Field Values

CUDA_ERROR_CONTEXT_IS_DESTROYED

public static final int CUDA_ERROR_CONTEXT_IS_DESTROYED
This error indicates that the context current to the calling thread has been destroyed using ::cuCtxDestroy, or is a primary context which has not yet been initialized.

See Also:
Constant Field Values

CUDA_ERROR_ASSERT

public static final int CUDA_ERROR_ASSERT
A device-side assert triggered during kernel execution. The context cannot be used anymore, and must be destroyed. All existing device memory allocations from this context are invalid and must be reconstructed if the program is to continue using CUDA.

See Also:
Constant Field Values

CUDA_ERROR_TOO_MANY_PEERS

public static final int CUDA_ERROR_TOO_MANY_PEERS
This error indicates that the hardware resources required to enable peer access have been exhausted for one or more of the devices passed to ::cuCtxEnablePeerAccess().

See Also:
Constant Field Values

CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED

public static final int CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED
This error indicates that the memory range passed to ::cuMemHostRegister() has already been registered.

See Also:
Constant Field Values

CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED

public static final int CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED
This error indicates that the pointer passed to ::cuMemHostUnregister() does not correspond to any currently registered memory region.

See Also:
Constant Field Values

CUDA_ERROR_NOT_PERMITTED

public static final int CUDA_ERROR_NOT_PERMITTED
This error indicates that the attempted operation is not permitted.

See Also:
Constant Field Values

CUDA_ERROR_NOT_SUPPORTED

public static final int CUDA_ERROR_NOT_SUPPORTED
This error indicates that the attempted operation is not supported on the current system or device.

See Also:
Constant Field Values

CUDA_ERROR_UNKNOWN

public static final int CUDA_ERROR_UNKNOWN
This indicates that an unknown internal error has occurred.

See Also:
Constant Field Values
Method Detail

stringFor

public static java.lang.String stringFor(int result)
Returns the String identifying the given CUresult

Parameters:
result - The CUresult value
Returns:
The String identifying the given CUresult